Linux ca platforma pentru dezvoltare

11
Linux ca platforma pentru dezvoltare Dragos Acostachioaie http://www.unixinside.org [email protected] Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

description

Linux ca platforma pentru dezvoltarea de programe

Transcript of Linux ca platforma pentru dezvoltare

Page 1: Linux ca platforma pentru dezvoltare

Linux ca platforma pentrudezvoltare

Dragos Acostachioaie

http://www.unixinside.org

[email protected]

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 2: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- platforma stabila

- ofera performante superioare altor sisteme de operare (consum redus de memorie,

viteza de lucru)

- existenta a numeroase medii integrate, biblioteci si instrumente pentru programatori

- open-source (instrumente si medii de programare disponibile gratuit)

- open-source (sursele sunt disponibile si se poate invata din ele)

- comunitate (comunitate numeroasa de programatori: schimb de experienta,

ajutor rapid si gratuit)

- proiectele nu trebuie sa fie neaparat open-source!

De ce Linux?

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 3: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- nucleul si utilitarele Linux sunt scrise in C

- majoritatea aplicatiilor Linux sunt scrise in C si C++

- sunt suportate majoritatea limbajelor de programare utilizate la momentul actual

- C si C++ - “nativ”

- Java

- C#

- Pascal, Fortran, LISP, ...

- scripting: bash, Perl

- Web: PHP, Javascript, ...

- altele: Python, Ruby, Tcl/tk, ...

Limbaje de programare

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 4: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- GCC

- permite extensii: G++ (pentru C++), Fortran, Objective C, Java, COBOL, ...

- clisp, gclisp (LISP)

- gnuavac (Java)

- Free Pascal compiler

- Intel C++ compiler

Compilatoare

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 5: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- emacs (+extensii LISP), Xemacs

- vi, vim (extensibil)

- gedit

- kwrite, kate

Editoare

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 6: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- diff, patch, diffutils

- CVS, RCS

- Subversion (SVN, folosit si de Google)

- Git (utilizat initial pentru nucleul Linux), Mercurial, Bazaar

- make

- autoconf, automake si libtool

- indent

- splint

Controlul versiunilor. Alte instrumente

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 7: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- GDB

- pentru C/C++

- este utilizat si de mediile integrate de programare

- cgdb

- DDD (front-end)

- Valgrind

Depanatoare

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 8: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- KDevelop (multi-limbaj, ex. C, C++, PHP, Ruby, Perl etc.)

- Glade, Amy, Dev-C++, gIDE (C/C++)

- Code Crusader

- Eclipse, NetBeans (Java, C/C++)

- Lazarus, Kylix (Delphi)

- BlackAdder (Ruby)

- wxBuilder, wxDesigner, wxPerl, wxPhyton

- Tcl Developer Studio (Tcl/tk)

- MonoDevelop (.NET)

Medii integrate

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 9: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- biblioteci C/C++: standard, STL, ...

- interfete utilizator: Qt, Gtk, Gtk++

- grafica: OpenGL, SDL, FreeImage etc.

- audio: ALSA, Fmod, OpenAL, Ogg Vorbis

- baze de date: MySQL, PostgreSQL, XML, Firebird, Ingres, MaxDB

- C#: Mono

Biblioteci

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 10: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- documentatie bine pusa la punct: HOWTO, pagini de manual, aplicatii documentate

- sisteme de management a documentatiei: doxygen, DOC++

Documentatie

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009

Page 11: Linux ca platforma pentru dezvoltare

Dragos Acostachioaie - http://www.unixinside.org

- dezvoltarea de proiecte open-source: sf.net (peste 160.000 de proiecte, peste

1.700.000 de utilizatori inregistrati)

- liste de discutii si forumuri (raspuns rapid si gratuit la probleme)

Comunitate

Scoala de vara “Informatica la castel”, Macea, 24-29 august 2009