forked from gdecuzzi/2014-Flamel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.tex
82 lines (66 loc) · 3.36 KB
/
main.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
\documentclass[preprint,10pt,nocopyrightspace]{sigplanconf}
% \documentclass{article}
\usepackage[T1]{fontenc} %%%key to get copy and paste for the code!
\usepackage[utf8]{inputenc} %%% to support copy and paste with accents for frnehc stuff
\usepackage{times}
\usepackage[scaled=0.85]{helvet}
\usepackage{graphicx}
\usepackage{ifthen}
\usepackage{xspace}
\usepackage{alltt}
\usepackage{latexsym}
\usepackage{url}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{stmaryrd}
\usepackage{enumerate}
\usepackage[pdftex,colorlinks=true,pdfstartview=FitV,linkcolor=blue,citecolor=blue,urlcolor=blue]{hyperref}
\usepackage{xspace}
\usepackage{listings}
\input{macros}
\begin{document}
\title{Wollok -- Relearning How To Teach Object-Oriented Programming}
\authorinfo{Javier Fernandes}
{Universidad Nacional de Quilmes \\ Universidad Nacional de San Martín}
\authorinfo{Nicolás Passerini}
{UTN -- F.R. Buenos Aires \\ Universidad Nacional de Quilmes \\ Universidad Nacional de San Martín}
\authorinfo{Pablo Tesone}
{UTN -- F.R. Buenos Aires \\ Universidad Nacional de Quilmes \\ Universidad Nacional del Oeste \\ Universidad Nacional de San Martín}
\date{\today}
\maketitle
\begin{abstract}
Students often have difficulties in learning how to program in an object-oriented style.
One of the causes of this problem is that object-oriented languages require the programmer to be familiarized with a big amount of non-trivial concepts.
For several years we have been teaching introductory OOP courses using an \emph{incremental learning path},
which starts with a simplified OOP model consisting only of objects, messages and references.
This learning path is supported by a customized development environment which enables the creation of programs using this \emph{simplified programming model},
and allows us to postpone the introduction of more abstract concepts like classes or inheritance.
In this work we propose an enhancement to this learning path focusing on the transitions between the stages of the course.
We also present a new educational programming language named Wollok, which allows maximizing the accuracy in the selection of concepts to present.
Finally, Wollok is accompanied by a programming environment which has lots of tools to guide the student and to help detecting mistakes
and at the same time is in line with the most common professional practices.
\end{abstract}
\input{introduction}
\input{problem}
\input{solution:language}
\input{proposedSolution}
\input{discussion}
\input{relatedWorks}
\input{conclusion}
\subsection{Acknowledgements}
We want to thank all the people who participated in the ObjectBrowser, Loop, Hoope and Ozono projects,
as well as the teachers and students that provided feedback from their use of those tools, leading us to the ideas presented here.
% This work was supported by Ministry of Higher Education and Research, Nord-Pas de Calais Regional Council, FEDER through the 'Contrat de
% Projets Etat Region (CPER) 2007-2013', the Cutter ANR project, ANR-10-BLAN-0219 and the MEALS Marie Curie Actions program FP7-PEOPLE-2011-
% IRSES MEALS (no. 295261).
{
\small
\bibliographystyle{abbrv}
\bibliography{wollok,Teaching,scg}
}
\input{appendix}
\end{document}