June 6 - 22, 2012 Open Source Summer School
Differences

This shows you the differences between two versions of the page.

Link to this comparison view

curriculum:auto-dev [2012/06/17 20:17]
razvan [Exerciții practice]
curriculum:auto-dev [2012/06/24 17:58] (current)
razvan
Line 1: Line 1:
 = Automatizare în dezvoltarea aplicațiilor = = Automatizare în dezvoltarea aplicațiilor =
  
-* [[http://open-source.cs.pub.ro/summer-school/resources/res/slides/auto-dev.pdf|Slide-urile prezentării]]+* [[http://open-source.cs.pub.ro/summer-school/res/slides/auto-dev.pdf|Slide-urile prezentării]]
  
 <html> <html>
Line 11: Line 11:
 == Exerciții practice == == Exerciții practice ==
  
-* Folosiți arhiva cu resurse de [[http://open-source.cs.pub.ro/summer-school/summer-school/res/slides/auto-dev.zip|aici]].+* Folosiți arhiva cu resurse de [[http://open-source.cs.pub.ro/summer-school/res/tasks/tasks-auto-dev.zip|aici]].
 ** Descărcați și dezarhivați fișierul:<code> ** Descărcați și dezarhivați fișierul:<code>
 wget http://open-source.cs.pub.ro/summer-school/res/tasks/tasks-auto-dev.zip wget http://open-source.cs.pub.ro/summer-school/res/tasks/tasks-auto-dev.zip
 unzip tasks-auto-dev.zip unzip tasks-auto-dev.zip
 +</code>
 +* Instalați Dia, Ant, Sun Java SDK, Flex și Bison și LaTeX:<code>
 +apt-get install dia
 +apt-get install ant
 +apt-get install sun-java6-jdk
 +apt-get install flex bison
 +apt-get install texlive-latex-base texlive-latex-extra texlive-bibtex-extra texlive-publishers highlight
 </code> </code>
  
 # Creați un repository Git în cadrul directorului obținut din dezarhivare:<code> # Creați un repository Git în cadrul directorului obținut din dezarhivare:<code>
 +git init .
 git add . git add .
 git commit -m 'Add OSSS tasks' git commit -m 'Add OSSS tasks'
Line 46: Line 54:
 ##*** {{{PDFLATEX}}}, comanda folosită pentru compilarea surselor. ##*** {{{PDFLATEX}}}, comanda folosită pentru compilarea surselor.
 ##*** {{{BASENAME}}}, numele de bază al fișierului ({{{cap-01}}}). ##*** {{{BASENAME}}}, numele de bază al fișierului ({{{cap-01}}}).
-##*** {{{TEX}}}, numele fișierului sursă ({{{cap-01.tex}}}) (concanenați extensia {{{.tex}}} la {{{BASENAME}}}). +##*** Folosiți o construcție de forma {{{$(addsuffix extension, $(BASENAME))}}} pentru a defini noi variabile: 
-##*** {{{PDF}}}, numele de bază al fișierului ({{{cap-01.pdf}}}) (concanenați extensia {{{.tex}}} la {{{BASENAME}}})+##**** {{{TEX}}}, numele fișierului sursă ({{{cap-01.tex}}}) (concanenați extensia {{{.tex}}} la {{{BASENAME}}}). 
-##**** Folositi construcția {{{$(addsuffix .tex, $(BASENAME)}}}.+##**** {{{PDF}}}, numele de bază al fișierului ({{{cap-01.pdf}}}) (concanenați extensia {{{.tex}}} la {{{BASENAME}}}).
 ##** Actualizați fișierul Makefile pentru a defini variabila {{{OUT_DIR}}} cu valoarea {{{texfiles}}}. ##** Actualizați fișierul Makefile pentru a defini variabila {{{OUT_DIR}}} cu valoarea {{{texfiles}}}.
 ##*** Comanda {{{pdflatex}}} primește ca argument opțiunea {{{-output-directory}}} (vezi manual) pentru a genera fișierele de ieșire acolo. ##*** Comanda {{{pdflatex}}} primește ca argument opțiunea {{{-output-directory}}} (vezi manual) pentru a genera fișierele de ieșire acolo.
Line 60: Line 68:
 ##* Pentru compilarea corespunzătoare, trebuie să folosiți și fișierul {{{Makefile}}} din subdirectorul {{{code/}}}. ##* Pentru compilarea corespunzătoare, trebuie să folosiți și fișierul {{{Makefile}}} din subdirectorul {{{code/}}}.
 ##** Includeți, în fișierul Makefile, în locul potrivit comenzile:<code> ##** Includeți, în fișierul Makefile, în locul potrivit comenzile:<code>
--test -d $(CODE_DIR) && make -C $(CODE_DIR+-test -d $(CODE_DIR) && make -C $(CODE_DIR)
 -test -d $(CODE_DIR) && make -C $(CODE_DIR) clean -test -d $(CODE_DIR) && make -C $(CODE_DIR) clean
 </code> </code>
Line 100: Line 108:
 #* Inițializați remote-ul {{{origin}}} la valoarea {{{username@swarm.cs.pub.ro:git-repos/osss.git}}}, unde //username// este numele vostru de utilizator de pe {{{swarm.cs.pub.ro}}}. #* Inițializați remote-ul {{{origin}}} la valoarea {{{username@swarm.cs.pub.ro:git-repos/osss.git}}}, unde //username// este numele vostru de utilizator de pe {{{swarm.cs.pub.ro}}}.
 #* Copiați, prin SSH ({{{scp}}}), conținutul directorului la {{{username@swarm.cs.pub.ro:git-repos/osss.git/hooks/}}}:<code> #* Copiați, prin SSH ({{{scp}}}), conținutul directorului la {{{username@swarm.cs.pub.ro:git-repos/osss.git/hooks/}}}:<code>
-scp * username@swarm.cs.pub.ro:git-repos/osss.git/hooks/+scp -r * username@swarm.cs.pub.ro:git-repos/osss.git/hooks/
 </code> </code>
 #* Faceți push la repository:<code> #* Faceți push la repository:<code>
Line 107: Line 115:
 #* În urma operației de push slide-urile generate anterior vor fi publicate la URL-ul {{{http://swarm.cs.pub.ro/~username/projects/osss/}}}. #* În urma operației de push slide-urile generate anterior vor fi publicate la URL-ul {{{http://swarm.cs.pub.ro/~username/projects/osss/}}}.
 # Intrați în subdirectorul {{{04-ant-demo/}}}. # Intrați în subdirectorul {{{04-ant-demo/}}}.
 +#* Urmăriți fișierul {{{build.xml}}} și sursele din directorul {{{src/}}}.
 +#* Compilați sursele:<code>
 +JAVA_HOME=/usr/lib/jvm/java-6-sun/ ant
 +</code>
 +#** Ca să câștigați timp, puteți exporta variabila {{{JAVA_HOME}}} în shell:<code>
 +export JAVA_HOME=/usr/lib/jvm/java-6-sun/
 +</code>
 +#* Urmăriți fișierele {{{.class}}} compilate în directorul {{{classes/}}}.
 +#* Folosiți comanda Ant de rulare a aplicației (nu va rula din cauza absenței serverului).
 +#* Folosiți comanda Ant de generare a documentației Javadoc în directorul {{{doc/api/}}}.
 +#** Fișierul {{{buil.xml}}} dispune de regulă pentru generarea documentației. Folosiți acea regulă.
 +#** Parcurgeți documentația generată.
 # Intrați în subdirectorul {{{05-ant-from-scratch/}}}. # Intrați în subdirectorul {{{05-ant-from-scratch/}}}.
 +#* Construiți setupul necesar astfel încât să fie compilabil cu Ant.
 +#** Porniți de la fișierul {{{build.xml}}} de la exercițiul anterior.
 +#* Folosiți pachetul {{{ro.pub.cs.sprc.chord}}}.
 +#** Adică trebuie adăugată, la începutul fiecărui fișier {{{.java}}}, următoarea linie:<code>
 +package ro.pub.cs.sprc.chord;
 +</code>
 +#* Nu folosiți regulă de {{{run}}}. Sunt mai multe clase de tip main și nu are rost să complicăm fișierul {{{build.xml}}}.
 +#* Folosiți, respectiv, regulile {{{build}}} (implicit), {{{clean}}} și {{{doc}}}.
 +#* Înainte de a comite actualizările, folosiți fișiere {{{.gitignore}}} pentru a ignora fișierele obținute (fișierele {{{.class}}} și fișierele de ieșire de tip Javadoc).
 +#** **Hint**: Puteți ignora directoarele care conțin aceste fișiere.

OS

Calendar
  • June 6-7: welcoming and intro from UPB Summer School
  • Friday, June 8: intro of OSSC: presentation of people involved, curriculum, projects, selection of projects
  • June 11-15, 18-21: presentations and hackathons
  • Friday, June 22: presentation of project outcomes, diplomas and prizes, closing
Powered by

CS

ROSEdu

Systems

Sponsori

Adobe

EDW

Google