Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Right Tool for the Job:Як правильновибрати мовупрограмуванняСергій Батюк
Вступ5 років
Вступ1,5 роки
CTO софтверної компанії
Задачі• Система для торгівлі на біржі• Сайт для "Планети кіно”• CRM система для Київстару• Новий Facebook• Програма для ав...
Що таке мовапрограмування?
Комп’ютерні науки• Теорія обчислень• Алгоритми та структури даних• Методології та мови програмування• Елементи та архітект...
Мова програмування• Штучна мова для передачі інструкцій машині, зокремакомп’ютеру• Синтаксис (форма), семантика (значення)...
Парадигми програмування• Фундаментальні стилі програмування• 4 основних парадигми:• Імперативна• C, C++, Java, PHP, Python...
Історія• 1940-і: перші електричні комп’ютери• ENIAC, Electric Numerical Integrator And Computer• 1950-і та 1960-і: перші с...
Історія (продовження)• 1980-і: консолідація, модулі, продуктивність• C++, Ada, Common Lisp, Eiffel, Objective-C, Erlang, P...
Історія (діаграма)
Розвиток Java• Грудень 1990: Patrick Naughton, Stealth Project,альтернатива С/С++• Green Project: James Gosling, Mike Sher...
Популярні мови (TIOBE)1. C2. Java3. Objective-C4. C++5. PHP6. C#7. Visual Basic8. Python9. Perl10.JavaScript11. Ruby12. Vi...
Enterprise vs Consumer Web1. Scale (Users vs Applications)2. Experience (Simplicity vs Functionality)3. Security (One for ...
Задачі 2• Система для торгівлі на біржі• Scala, Java, and C#• Сайт для "Планети кіно”• PHP, Ruby, Python, JavaScript, Java...
Задачі 2• Програма для автоматизації обрахунків у космічній обсерваторії• Scala, C++, Erlang• Двигун для 3D гри• C/C++• Ко...
5 мов
5 мов
Висновки
Запитання
Upcoming SlideShare
Loading in …5
×

Right Tool for the Job: Як правильно вибрати мову програмування

903 views

Published on

Презентація для 22 JUG презентації: http://jug-lviv.blogspot.com/2013/06/jug-22-right-tool-for-job.html

Published in: Technology
  • Відео:
    <br /><iframe width="350" height="288" src="http://www.youtube.com/embed/LR8fQiskYII" frameborder="0"></iframe><iframe width="350" height="288" src="http://www.youtube.com/embed/NvWTnIoQZj4" frameborder="0"></iframe>
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Right Tool for the Job: Як правильно вибрати мову програмування

  1. 1. Right Tool for the Job:Як правильновибрати мовупрограмуванняСергій Батюк
  2. 2. Вступ5 років
  3. 3. Вступ1,5 роки
  4. 4. CTO софтверної компанії
  5. 5. Задачі• Система для торгівлі на біржі• Сайт для "Планети кіно”• CRM система для Київстару• Новий Facebook• Програма для автоматизації обрахунків у космічній обсерваторії• Двигун для 3D гри• Компілятор• Музичний додаток для iPhone• Текстовий редактор для Windows
  6. 6. Що таке мовапрограмування?
  7. 7. Комп’ютерні науки• Теорія обчислень• Алгоритми та структури даних• Методології та мови програмування• Елементи та архітектура комп’ютерів
  8. 8. Мова програмування• Штучна мова для передачі інструкцій машині, зокремакомп’ютеру• Синтаксис (форма), семантика (значення)• Поділ за:• Парадигмами• Сферами застосування• Історія
  9. 9. Парадигми програмування• Фундаментальні стилі програмування• 4 основних парадигми:• Імперативна• C, C++, Java, PHP, Python• Декларативна• SQL, RegExp, CSS• Функціональна• Erlang, Haskell, Lisp, Clojure, Scala• Об’єктно-орієнтована• C++, C#, Java, PHP, Python, Ruby• Мультипарадигмові мови
  10. 10. Історія• 1940-і: перші електричні комп’ютери• ENIAC, Electric Numerical Integrator And Computer• 1950-і та 1960-і: перші сучасні мови• FORTRAN, FORmula TRANslator• LISP, LISt Processor• COBOL, COmmon Business Oriented Language• ALGOL, ALGOrithmic Language• 1968-1979: формування основних парадигм• Simula, Smalltalk – початок ООП• С – системне програмування• Prolog – початок логічного програмування• ML – перша статично-типізована ф-на мова (поліморфізм)
  11. 11. Історія (продовження)• 1980-і: консолідація, модулі, продуктивність• C++, Ada, Common Lisp, Eiffel, Objective-C, Erlang, Perl• 1990-і: ера Інтернету• Поширення функціональних мов, поява ОО Rapid AppDevelopment мов, скриптові мови• Haskell, Python, Visual Basic, HTML, Ruby, Lua, Java, ObjectPascal, JavaScript, PHP• Сучасні тенденції• Functional programming; concurrent and distributedprogramming; mixins, delegates, aspects; component-orientedsoftware development; distribution and mobility; open source;massively parallel languages• ActionScript, C#, Groovy, Scala, Clojure, Go
  12. 12. Історія (діаграма)
  13. 13. Розвиток Java• Грудень 1990: Patrick Naughton, Stealth Project,альтернатива С/С++• Green Project: James Gosling, Mike Sheridan• Нова технологія для програмування розумних приладівнового покоління• Літо 1992: Oak• PDA with Duke• Телеіндустрія• Літо 1994: WWW• Бровзери – інтерактивний медіум• Java
  14. 14. Популярні мови (TIOBE)1. C2. Java3. Objective-C4. C++5. PHP6. C#7. Visual Basic8. Python9. Perl10.JavaScript11. Ruby12. Visual Basic .Net13. Transact-SQL14. Lisp15. Pascal16. Bash17. PL/SQL18. Delphi/Object Pascal19. Ada20. MATLAB
  15. 15. Enterprise vs Consumer Web1. Scale (Users vs Applications)2. Experience (Simplicity vs Functionality)3. Security (One for One vs One to Many)4. Transaction (Decoupled vs Complete)5. Integration (Loose vs Strict)6. Search (Page vs Data)
  16. 16. Задачі 2• Система для торгівлі на біржі• Scala, Java, and C#• Сайт для "Планети кіно”• PHP, Ruby, Python, JavaScript, Java (Android), and Objective-C• CRM система для Київстару• Java, C#• Новий Facebook• PHP, Ruby, Python, JavaScript
  17. 17. Задачі 2• Програма для автоматизації обрахунків у космічній обсерваторії• Scala, C++, Erlang• Двигун для 3D гри• C/C++• Компілятор• C/C++• Музичний додаток для iPhone• Objective-C• Текстовий редактор для Windows• C#
  18. 18. 5 мов
  19. 19. 5 мов
  20. 20. Висновки
  21. 21. Запитання

×