თანამედროვე პროგრამირების ენები. ყველაზე პოპულარული პროგრამირების ენები ბელორუსის ბაზარზე

პროგრამირების ენები არსებობს უზარმაზარი თანხა, მაგრამ ყველა მათგანი არ უზრუნველყოფს, რომ პროგრამისტი იყოს მოთხოვნადი შრომის ბაზარზე.

ინდექსიTIOBE

პროგრამირების ენების პოპულარობის შეფასებისას შეგიძლიათ უსაფრთხოდ ენდოთ TIOBE კომპანიის მონაცემებს, რომელიც სპეციალიზირებულია სხვადასხვა ხარისხის შეფასების და თვალყურის დევნებაში. პროგრამული უზრუნველყოფა. ისინი ზომავენ წერილობითი პროგრამის ხარისხს ფართოდ მიღებული კოდირების სტანდარტების გამოყენებით. კომპანია დაარსდა 2000 წელს და მას შემდეგ მიაღწია იქამდე, რომ ყოველდღიურად რეალურ დროში ამოწმებს 300 მილიონზე მეტ რიგს. პროგრამის კოდიმათი კლიენტები.

კომპანიის ვებსაიტზე მოცემულია TOP 20 პროგრამირების ენის "პოპულარობის" ცხრილი (ინდექსი TIOBE). ამ ცხრილში ჩასართავად პროგრამირების ენას უნდა ჰქონდეს 1%-ზე მეტი რეიტინგი. რას ნიშნავს ეს რეიტინგი? სინამდვილეში, ეს მარტივია. ინდექსი აფასებს კონკრეტული ენის პოპულარობას გამოთვლების საფუძველზე საძიებო მოთხოვნებიმასთან დაკავშირებული. ყველაზე პოპულარული გამოიყენება ინდექსაციისთვის საძიებო სისტემებიდა პორტალები, Google-დან ვიკიპედიამდე და ამაზონამდე. ანუ, თუ მოთხოვნის 1%-ზე მეტი ეკუთვნის რომელიმე პროგრამირების ენას, მაშინ ის მოხვდება ამ ცხრილში. 2016 წლის ივნისის მდგომარეობით, ასე გამოიყურება:

TIOBE ინდექსი 2016 წლის ივნისისთვის

2016 წლის ივნისი

2015 წლის ივნისი

პროგრამირების ენა

Visual Basic.NET

ასამბლეის ენა

დელფი/ობიექტი პასკალი

ზევით არის ჯავის ენა, რომელიც მრავალი წლის განმავლობაში იკავებდა წამყვან პოზიციას. ეს უდავოდ გამოწვეულია მისი მაღალი გავრცელებით და ინტერნეტთან კავშირით. სხვათა შორის, 10 წლის წინ პირველი 8 პროგრამირების ენა მოიცავდა ბაზრის 80%-ს დღეს ეს ღირებულება 55%-მდე დაეცა; ეს მიუთითებს იმაზე, რომ რეალური ბაზრის ლიდერების რაოდენობა თანდათან მცირდება. გასაგებია - ტექნოლოგიები ვითარდება, საჭიროა ახალი და ორიგინალური პროგრამული გადაწყვეტილებები. პროგრამირების ენების პოპულარობის ტენდენცია ბოლო 15 წლის განმავლობაში ნაჩვენებია ქვემოთ მოცემულ ფიგურაში:


სხვათა შორის, ენის პოპულარობის შეფასებისას, საძიებო მოთხოვნების გარდა, ასევე ფასდება კვალიფიციური ინჟინრების რაოდენობა მთელს მსოფლიოში, ასევე შემოთავაზებული კურსების რაოდენობა და მრავალი სხვა ინდიკატორი.

მოთხოვნა პროგრამირების ენებზე

ბელორუსში საუკეთესო პროგრამირების ენებზე მოთხოვნის გასაანალიზებლად, შეისწავლეს მონაცემები სამუშაოს ძიების ყველაზე პოპულარული საიტებიდან liveinternet.ru მონაცემების მიხედვით. ისინი აღმოჩნდა საიტები jobs.tut.by, rabota.by და praca.by. ქვემოთ მოცემულია ვაკანსიების რაოდენობა საუკეთესო პროგრამირების ენებზე მომუშავე სპეციალისტების მოსაძებნად.

პროგრამირების ენა

გამოქვეყნებული ვაკანსიების რაოდენობა

ასამბლეის ენა

დელფი/ობიექტი პასკალი

გასულ წელთან შედარებით, TIOBE-ის რეიტინგს დაემატა რამდენიმე ახალი პროგრამირების ენა, რომელთაგან ყველაზე სწრაფად მზარდი Swift იყო.

მიზეზები, რის გამოც Swift სულ უფრო მეტ პოპულარობას იძენს, საკმაოდ აშკარაა. იგი შექმნილია Apple-ის მიერდა გამოიყენება აპლიკაციების შესაქმნელად Apple მოწყობილობებისთვის, რომლებიც მუშაობენ ქვეშ iOS კონტროლიდა OS X. Swift შეიძლება ითქვას, რომ აგებულია Objective-C-ზე, მაგრამ ამავე დროს ის აძლევს დეველოპერებს C++-სა და Java-ში არსებულ ბევრ იგივე ფუნქციას.

იმისდა მიუხედავად, რომ Swift TIOBE-ის რეიტინგში მხოლოდ წელს გამოჩნდა, ის შეიძლება შევადაროთ ისეთ ენებს, როგორიცაა PL/SQL და Objective-C შეთავაზებული სამუშაოების რაოდენობის მიხედვით. ზემოაღნიშნულიდან გამომდინარე, შეგვიძლია დავასკვნათ, რომ Swift პოპულარობას მხოლოდ მომდევნო წლებში მოიპოვებს.

სიცხადისთვის, მოდით წარმოვადგინოთ მონაცემები ზემოთ ცხრილიდან წრიული დიაგრამის სახით:


გასულ წელს მსგავსი სტატია 2014-2015 წლების ანალიზით განთავსდა საიტზე. თანაბრად საინტერესო იქნებოდა იმის ცოდნა, თუ როგორ შეიცვალა მოთხოვნის ტენდენცია იმ პროგრამირების ენებზე, რომლებიც TIOBE-ის რეიტინგში რჩებიან გასული წლიდან. ქვემოთ მოყვანილი ცხრილი შედგენილია ანალიზისთვის:

პროგრამირების ენა

ვაკანსიების რაოდენობა დამსაქმებელთა ვებსაიტებზე წლის მიხედვით

სიცხადისთვის, წარმოვადგინოთ ცხრილის მონაცემები დიაგრამის სახით



საშუალოდ, ზოგიერთი პროგრამირების ენის პოპულარობის ზრდის ტემპი შარშანდელთან შედარებით იყო 50%, ხოლო ზოგიერთ შემთხვევაში, მაგალითად, C#, PHP, JavaScript და Objective-C, პროგრამისტის ვაკანსიებზე მოთხოვნა თითქმის გაორმაგდა. .

როგორც დასკვნა

განხილულ სტატიაში გაანალიზებულია მოთხოვნა ბელორუსში პოპულარულ პროგრამირების ენებზე. თუ თქვენ ხართ დამწყები პროგრამისტი და მხოლოდ წყვეტთ რომელი მიმართულებით განავითაროთ, მაშინ თქვენი არჩევანი შეიძლება იყოს Java, C#, PHP, JavaScript ან Objective-C. გასული წლის განმავლობაში ბელორუსიაში, ამ პროფილის სპეციალისტებზე მოთხოვნა თითქმის გაორმაგდა. ასევე შეგიძლიათ უსაფრთხოდ დადოთ ფსონი Swift-ზე, რომელიც ახლახან იწყებს იმპულსს, მაგრამ ჩვენ ნამდვილად შეგვიძლია ვიხილოთ ის რეიტინგის სათავეში მომავალ წელს.

1. პროექტისთვის პროგრამირების ენის არჩევისას არჩევანი ორ მხარეს შორისაა – აირჩიე ძველი, აპრობირებული ხელსაწყო თუ ახალი, ლამაზი, ფუნქციონალური, მაგრამ ნაკლებად გამოცდილი და შესაბამისად არასანდო ენა. რა არის ყველაზე ჭკვიანი ამ სიტუაციაში? რა რისკებს შეიცავს თითოეული გამოსავალი და როგორ გავუმკლავდეთ მათ?

იგორ ზილბერგი,ჭკვიანი უფროსი
აუცილებელია ინსტრუმენტების შერჩევა დავალებისადმი მათი ადეკვატურობისა და შერჩეული ინსტრუმენტების გაცნობილი გამოცდილი გუნდის არსებობის მიხედვით. რისკები ახალ ინსტრუმენტებთან მუშაობისას მინიმუმამდეა დაყვანილი კვლევის, კონცეფციის დამადასტურებელი საბუთის შექმნით და გამოცდილი კონსულტანტების ჩართვით. ახალი ტექნოლოგიები მუდმივად უნდა იყოს შესწავლილი, მაგრამ მხოლოდ იმ შემთხვევაში, თუ ისინი უკეთესად შეეფერება კონკრეტულ პრობლემას.

ალექსანდრე მაკარჩუკი, qb
ბიზნესისთვის, კონცეფცია " ლამაზი ენა"არ არსებობს. თქვენ შეგიძლიათ დადოთ ფსონი ახალ შეუმოწმებელ ენაზე მხოლოდ იმ შემთხვევაში, თუ გარანტირებული იქნება პროექტს მისცემს რაიმე სახის სპეციალურ USP-ს, რომელსაც კლიენტები შეძლებენ იგრძნონ და რაც მთავარია, მოისურვებენ გადაიხადონ იგი. თუ ეს პირობა დაკმაყოფილებულია, მაშინ აირჩიეთ ახალი ენაშესაძლებელია, მაგრამ ამავე დროს მოგიწევთ მასთან დაკავშირებული ყველა რისკის აღება.

გრიგორი ნიკონოვი Actis Wunderman
რა თქმა უნდა, ეს დამოკიდებულია პროექტზე და თავად ენის სიმწიფეზე. თუ პროექტი საშუალებას იძლევა, ან ენის გამოყენება არის აუცილებელი პირობა, და ხელმისაწვდომია საჭირო საგნობრივი ბიბლიოთეკები, მაშინ სავსებით შესაძლებელია ექსპერიმენტის დაშვება. რისკები აშკარაა: „ხაფანგები“, რომლებსაც შეიძლება ნახევრად წააწყდეთ. ამ რისკების მინიმიზაცია ასევე აშკარაა: თუ შესაძლებელია, ჩაატარეთ კვლევა პროექტის დაწყებამდე და დარწმუნდით, რომ, მინიმუმ, არის ენის აქტიური მხარდაჭერა ფორუმებზე ან მწარმოებლისგან.

,ADV
ამ საკითხში ყველაფერი დამოკიდებულია პროექტის დროზე და ბიუჯეტზე. თუ ორივე ძალიან შეზღუდულია, მაშინ ნებისმიერი კვლევა არ არის გამართლებული და შეიძლება მოიტანოს დიდი პრობლემები, პროექტის სრულ ჩავარდნამდე.

ალექსეი ფედოროვი, "კლასელები"
პასუხი დიდად არის დამოკიდებული იმაზე, თუ რამდენ ხანს იგეგმება პროექტი გაგრძელდეს. თუ ეს არის პატარა საბაჟო პროექტი, რომელიც უნდა გაკეთდეს სწრაფად, მიწოდება და დავიწყება, მაშინ შეგიძლიათ აირჩიოთ რაც გსურთ. თუ ეს არის დიდი პროექტი, რომელსაც წლები დასჭირდება, მაშინ უმჯობესია აირჩიოთ აპრობირებული ტექნოლოგიები, რომლებისთვისაც შეგიძლიათ დაიქირავოთ საჭირო რაოდენობის სპეციალისტები. იმისათვის, რომ შეაფასოთ, რამდენი სპეციალისტია კონკრეტულ ტექნოლოგიაში თქვენს რეგიონში, საკმარისია გამოიყენოთ ნებისმიერი გონივრული სერვისი, მაგალითად, LinkedIn ან HeadHunter. და შემდეგ თქვენ უნდა გადახედოთ არაფუნქციურ მოთხოვნებს: დატვირთვა, უსაფრთხოება, შეცდომების ტოლერანტობა და ა.შ.

2. რა მნიშვნელოვანი ფაქტორები იძლევა იმის გარანტიას, რომ ენა შეიძლება და უნდა იყოს გამოყენებული წარმოებაში?

იგორ ზილბერგი,ჭკვიანი უფროსი
არავინ და არაფერი არ იძლევა გარანტიას ამქვეყნად. ჩვენ ვეყრდნობით ჩვენს გამოცდილებას და გავრცელებულ საუკეთესო პრაქტიკას.

ალექსანდრე მაკარჩუკი, qb
არსებობს სამი ძირითადი ნიშანი, რომელიც მიუთითებს იმაზე, რომ კონკრეტული ენის გამოყენება მომგებიანი და უსაფრთხოა. ჯერ ერთი, ამ ენისთვის „ცოცხალი“ საზოგადოების არსებობა, მეორეც, წარმატებული შემთხვევების არსებობა და მესამე, მსხვილი მოვაჭრეების მიერ ენის მხარდაჭერა.

გრიგორი ნიკონოვი Actis Wunderman
„მომწიფებული“ საგნობრივი ბიბლიოთეკების და ჩარჩოების არსებობა, აქტიური ონლაინ საზოგადოება, რომელიც გთავაზობთ რჩევებს პრობლემების გადაჭრაში, არარსებობა უარყოფითი მიმოხილვებისაბოლოო განაცხადის სტაბილურობისა და შესრულების შესახებ.

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
ფაქტორები არის მოცემული ენის საზოგადოება, რიცხვი დასრულებული პროექტები, დეველოპერების რაოდენობა და ა.შ. პროდუქტის ახალი და უხეში ენით წარმოებისთვის გამოშვება მხარდაჭერის დიდ პრობლემებს მალავს.

ალექსეი ფედოროვი, "კლასელები"
ოფიციალური გარანტია შეიძლება მხოლოდ კონტრაქტით იყოს მხარდაჭერილი. თუ არის სერიოზული გამყიდველი (მაგალითად, Oracle, SAP, IBM), რომელიც იძლევა გარანტიას, რომ მისი ტექნოლოგია იქნება მხარდაჭერილი მომდევნო 10 წლის განმავლობაში და შესაბამისი მხარდაჭერის ხელშეკრულება გაფორმებულია ამ გამყიდველთან, მაშინ, პრინციპში, შეგიძლიათ ეს ერთგვარ გარანტიად ჩათვალოთ. პრობლემა ის არის, რომ ეს ჩვეულებრივ ძალიან ძვირია და მსხვილი გამყიდველების მხარდაჭერის ხარისხი ჩვეულებრივ ამაზრზენია.

ამიტომ, მსოფლიოში ბოლო წლებშიმიღებულია სხვა პრაქტიკა - ღია წყარო. თუ თქვენ გაქვთ ღია კოდის ინსტრუმენტი (ენა, ჩარჩო, მონაცემთა ბაზა ან სხვა) ღია წყარო კოდი, მაშინ ეს გაძლევს გარკვეულ გარანტიას, რომ თუ ამ ხელსაწყოში უცებ აღმოჩენილი ხარვეზი, მაშინ ხარ როგორც უკანასკნელი საშუალებათქვენ შეგიძლიათ თავად გამოასწოროთ ეს ხარვეზი. სწორედ ღია წყაროს გადაწყვეტილებების ეს თვისება მიმაჩნია დღევანდელი ბიზნესისთვის ძირითად.

3. რა უნდა გააკეთოს, თუ დეველოპერი ან თუნდაც რამდენიმე დეველოპერი გვთავაზობს პროგრამირების ენის შეცვლას, მაგრამ სიტუაცია აჩვენებს, რომ მათი გატაცება არ არის მხარდაჭერილი ტექნოლოგიის ადეკვატური ბიზნეს მოთხოვნებით?

იგორ ზილბერგი,ჭკვიანი უფროსი
დეველოპერებს არ აქვთ ბიზნეს მოთხოვნები. ისინი წარმოდგენილია ბიზნესის მიერ. თუმცა, ბიზნესი დამოკიდებულია კოდის ხარისხზე, რომელსაც დეველოპერები წერენ. ამიტომ, თუ დეველოპერებს სურთ გამოიყენონ ტექნოლოგია, რომელიც აშკარად არ არის შესაფერისი ბიზნეს პრობლემის გადასაჭრელად, მაშინ მათ ან უნდა დაარწმუნონ დეველოპერები, ან შეცვალონ იგი. ადეკვატური და გამოცდილი დეველოპერიშეუძლია გაიგოს ბიზნესის მოთხოვნები და გამოიყენოს მათზე ყველაზე შესაფერისი გადაწყვეტა. ჩვენ გვაქვს მსგავსი პრობლემებიარ იყო. ჩვენს პრაქტიკაში ხშირად ხდება პირიქით: მომხმარებელი, იმის ნაცვლად, რომ ჩამოაყალიბოს ბიზნეს მოთხოვნები, გავლენას ახდენს ტექნოლოგიის არჩევაზე (ხშირად საკუთარი მოთხოვნების განხორციელების საზიანოდ).

ალექსანდრე მაკარჩუკი, qb
თუ ახალ ენაზე გადასვლა არ არის მხარდაჭერილი ხელშესახები არგუმენტებით და არ ჰპირდება პროექტს სერიოზულ სარგებელს, მაშინ ეს არ არის საჭირო. მაგრამ, რა თქმა უნდა, ეს უნდა აუხსნან დეველოპერებს, რათა გუნდს არ შეექმნას შთაბეჭდილება, რომ მათ არ უსმენენ.

გრიგორი ნიკონოვი Actis Wunderman
დაიცავით კონსერვატიული პოლიტიკა და არ შეცვალოთ ენა კარგი მიზეზის გარეშე. ყოველთვის იქნება სხვა პროექტი, რომელზედაც შევეცდებით ახალი ენა.

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
დეველოპერებს მხოლოდ შუაში შეხვდებით შიდა პროექტის შემთხვევაში, ან თუ გუნდის მომზადებაზეა დაწერილი. ამ შემთხვევაში წარუმატებლობის რისკები მცირეა, წარუმატებლობის შემთხვევაში კი სასარგებლო გამოცდილება სწავლობს მომავლისთვის. წინააღმდეგ შემთხვევაში, ბიზნესი არ დააფასებს დეველოპერების პერფექციონიზმს.

ალექსეი ფედოროვი, "კლასელები"
პირველ რიგში, უნდა იკითხოთ, რა არის ენის შეცვლის იდეის საფუძველი. რას მისცემს ეს? რა არის დადებითი და რა უარყოფითი მხარეები? რა ღირს ასეთი გადასვლა და რა ვადები? რა არის რისკები?

თუ მიღებული პასუხები გაკმაყოფილებთ ბიზნესის თვალსაზრისით, განაგრძეთ. თუ არ ხართ კმაყოფილი, უნდა სცადოთ დეველოპერებს მიაწოდოთ მათზე უარის თქმის მიზეზები.

4. როდის ღირს ერთი ენიდან მეორეზე გადასვლის ღირებულება?

იგორ ზილბერგი,ჭკვიანი უფროსი
შეუძლებელია პლატფორმის შეცვლის ხარჯების და მასთან დაკავშირებული სარგებლის შეფასება პროექტის კონტექსტის მიღმა. ასეთი გადაწყვეტილების მიღება შესაძლებელია მხოლოდ კონკრეტული პროექტის ფარგლებში ინფორმირებული მიდგომის საფუძველზე და არა რაიმე „უნივერსალური“ მოსაზრებების ან წესების საფუძველზე.

ალექსანდრე მაკარჩუკი, qb
როდესაც ეს იწვევს ხელშესახებ მოგებას, როგორც პირდაპირ, ასევე ირიბ პროექტს ახალი USP-ის გაჩენის გამო, რაც პროდუქტს უფრო კონკურენტუნარიანს გახდის.

გრიგორი ნიკონოვი Actis Wunderman
იმ შემთხვევაში, როდესაც ახალი ენის გამოყენება საშუალებას გაძლევთ მნიშვნელოვნად გააუმჯობესოთ მთელი ცხოვრების ჯაჭვი საგნობრივი სფერო: აპლიკაციის დიზაინიდან, შემუშავებიდან და ტესტირებიდან დაწყებული, იმპლემენტაციამდე და შემდგომ განახლებებსა და გაუმჯობესებამდე, ენისა და მის გარშემო არსებული ეკოსისტემის თვისებების გამო.

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
როდესაც ენის მხარდაჭერა შეჩერებულია და ამავდროულად ბაზარზე სპეციალისტების რაოდენობა ნულისკენ მიისწრაფვის. ან თუ მთლიანად დაკარგავ ძველ გუნდს ტექნოლოგიის შენარჩუნების უნარის გარეშე. როდესაც ენიდან მიღებული მოგება უფრო მეტია, ვიდრე მისი გადასვლის ღირებულება.

ალექსეი ფედოროვი, "კლასელები"
როდესაც თქვენ და თქვენს კოლეგებს გაქვთ მკაფიო პასუხები ზემოთ მოცემულ კითხვებზე.

5. როგორ ფიქრობთ, არის თუ არა კარგად ჩამოყალიბებული ენების გამოყენება გარკვეული ამოცანებისთვის? თუ ასეა, ზუსტად როგორ ხედავთ მას? შეიძლება გამოჩნდეს ან უკვე არსებობდეს ენა, რომელიც შეცვლის სიტუაციას და დაიპყრობს უმეტესობადეველოპერები?

იგორ ზილბერგი,ჭკვიანი უფროსი
რა თქმა უნდა, არსებობს რამდენიმე ტიპიური აპლიკაცია სხვადასხვა პლატფორმები(არა ენები). მაგალითად, Java და .NET შედარებით დიდი ბიზნეს აპლიკაციებისთვის ან სერვისებისთვის. Node.js მრავალსართულიანი დამუშავებისა და შეტყობინებებისთვის. ყველაფრის ჩამოთვლა შეუძლებელია. თუმცა, ეს საზღვრები ძალიან, ძალიან ბუნდოვანია და ასევე დამოკიდებულია რეგიონზე. მაგალითად, აშშ-ში გამოყენების გამოცდილება, „მოდა“ და პლატფორმების გამოყენების ტიპიური სფეროები ოდნავ განსხვავდება ჩვენისგან.

ალექსანდრე მაკარჩუკი, qb
ერთის მხრივ, არსებობს ენების დაყოფა აპლიკაციების მიხედვით, მაგრამ, მეორე მხრივ, საკმაოდ მნიშვნელოვანია რეგიონალური და ფასის ფაქტორები: ტექნოლოგიაში შესვლის ღირებულება, მხარდაჭერა და ა.შ. რაც შეეხება ახალი ენების გაჩენას, აქ ერთი რამ უნდა აღინიშნოს. ბოლო რამდენიმე წლის განმავლობაში კომუნიკაციის დონე მნიშვნელოვნად გაიზარდა, მაგრამ პროგრამირების ენები არსებითად იგივეა. შესაძლოა, ეს არის შემდგომი რევოლუცია კომუნიკაციების სფეროში, რაც გამოიწვევს სრულიად ახალ განვითარების ტექნოლოგიებს.

გრიგორი ნიკონოვი Actis Wunderman
პრინციპში, არსებობს ასეთი დაყოფა: ენები C და C++ ტრადიციულად გამოიყენება დაბალი დონის განვითარებისთვის, Java და C# ითვლება ენებად. ზოგადი დანიშნულება, შესაფერისია ამოცანების ფართო სპექტრისთვის, ბიზნეს ლოგიკით დამთავრებული მობილური აპლიკაციები. Python, Ruby და PHP მიზნად ისახავს ძირითადად ვებ დეველოპმენტს, JavaScript - ბრაუზერის აპლიკაციებზე. მე არ ვფიქრობ, რომ ამ სფეროში დრამატული ცვლილებები შესაძლებელია, თუმცა ენებისა და ჩარჩოების მოდა ზოგჯერ იცვლება - ახლა, მაგალითად, Go ენა იწყებს პოპულარობის მოპოვებას.

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
დიახ. ზოგიერთი რამ უკეთესად მუშაობს სხვადასხვა ენებზემუშაობის სიჩქარისა და გამოყენების სიმარტივის გამო, მაგალითად, PHP პროექტებში, ენის „ნელის“ გამო, შეგიძლიათ განახორციელოთ ჩატი Node-ში ან აგრეგატორი Java-ში - შედეგი უკეთესი იქნება.

ყოველწლიურად, ყოველი ახალი ენა იღებს "საუკეთესოს" დაფებს და იმარჯვებს დეველოპერებზე, მაგრამ ჯერჯერობით, ალბათ, დადასტურებული ენების პოზიციები ურყევია. ყველაფერი შეიძლება მოხდეს მომავალში.

ალექსეი ფედოროვი, "კლასელები"
ყველაზე ცნობილი მე და შენთვის თანამედროვე ენებიპროგრამირების პროგრამები მრავალფუნქციურია, ანუ მათი გამოყენება შესაძლებელია ძალიან განსხვავებული გადაწყვეტილებების მისაღებად.

რაც შეეხება ახალ ენას - დიახ, ასეთი ენა შეიძლება გამოჩნდეს, მაგრამ ინდუსტრიის საკმაოდ ძლიერი ინერციის გამო, არ მგონია, რომ მომდევნო 5 წელიწადში ვინმემ Java-ს და C/C++-ს გადააყენოს მათი კვარცხლბეკი. მე რომ ავირჩიო "ცხენი", ჯავასკრიპტზე დავდებდი. დღეს ჩვენ ვხედავთ უზარმაზარ ზრდას ყველაფერში, რაც JavaScript-ს უკავშირდება ინდუსტრიაში. ჩარჩოები იბადება, როგორც სოკო წვიმის შემდეგ. აჟიოტაჟი ინტერნეტში ამ ტექნოლოგიის გარშემო უზარმაზარია. ვნახოთ სად მიგვიყვანს ეს ყველაფერი.

6. პროგრამისტი უნდა იყოს DevOps (აქვს პროგრამირების უნარები და სისტემის ადმინისტრატორი)? რა უნდა გააკეთოს იმ ფაქტზე, რომ პროგრამისტების უმეტესობა უარს ამბობს კომპეტენციების განვითარებაზე და პასუხისმგებლობის აღებაზე ამ სფეროში?

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
გარემოს დასაყენებლად, ისინი ჩვეულებრივ იყენებენ სისტემის ადმინისტრატორის სერვისებს. მაგრამ, ალბათ, აზრი აქვს, რომ პირს, ვინც კოდს წერს, უნდა შეეძლოს პლატფორმის კონფიგურაცია ამ კოდის ოპტიმალური შესრულებისთვის. ეს დაზოგავს დროსა და ხარჯებს.

7. უნდა გამოიყენოთ თუ არა მიკროსერვისები თქვენს პროექტებში?

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
არ არსებობს მკაფიო პასუხი, მაგრამ ჩვენი პასუხი არის დიახ. რა თქმა უნდა, მათ შეუძლიათ ბევრი პრობლემის დამატება, მაგრამ ასევე ბევრის გადაჭრაში დაგეხმარებათ. მაგალითად, მიკროსერვისების წყალობით, აპლიკაციის სხვადასხვა ნაწილი შეიძლება დაიწეროს სხვადასხვა პროგრამირების ენაზე, შესაძლებელია აპლიკაციის დატვირთული ნაწილების მასშტაბირება და ა.შ.

8. უნდა შეეძლოს თუ არა დეველოპერს მუშაობა თანამედროვე ვებ ტექნოლოგიებისა და ენების ფართო სპექტრთან?

ალექსეი სპარსიოვი, მიხაილ პარფენიუკი,ADV
ბოლო წლებში ფრონტენტმა უზარმაზარი ნახტომი გააკეთა, ხოლო სერვერის ენებიგანვითარება არც ისე შესამჩნევია. დეველოპერმა, რა თქმა უნდა, უნდა იცოდეს დაკავშირებული სფეროების საფუძვლები, მაგრამ შეუძლებელია იყო გურუ სერვერულ და კლიენტურ ენებზე.

ოქტომბრის სათაური: Swift კარგავს პოპულარობას

ამ წლის დასაწყისში პროგრამირების ენა Swift პიკს მიაღწია TIOBE ინდექსში 2.3%-ით და მიაღწია ტოპ 10 პოზიციასაც კი. მაგრამ ახლა ის დაბრუნდა მე-16 პოზიციაზე და მუდმივად იკლებს თვიდან თვემდე. ბოლო დრომდე საკმაოდ გავრცელებული იყო პროგრამირება ანდროიდის აპები Java და iOS აპებში Swift/Objective-C-ში. ეს საკმაოდ რთულია, რადგან თქვენ უნდა შეინარჩუნოთ ორი კოდიბაზები, რომლებიც თითქმის იგივეს აკეთებენ. ასე რომ, ჩარჩოები მობილურისთვისჰიბრიდული აპლიკაციები შემუშავდა და ახლა, როცა ისინი მომწიფდნენ, ისინი ძალიან პოპულარული ხდება. ბაზრის ლიდერები ამ სფეროში არიან Microsoft-ის Xamarin (C#), Apache's Cordova (JavaScript) და Ionic (JavaScript). ამ ყველაფრის შედეგია ის, რომ ენები, როგორიცაა C# და JavaScript არისპოპულარობის მოპოვება ისეთი ენების ფასად, როგორიცაა Java და Swift.

TIOBE პროგრამირების საზოგადოების ინდექსი პროგრამირების ენების პოპულარობის მაჩვენებელია. ინდექსი განახლდება თვეში ერთხელ. რეიტინგები ეფუძნება გამოცდილი ინჟინრების რაოდენობას მთელ მსოფლიოში, კურსებსა და მესამე მხარის მოვაჭრეებს. რეიტინგების გამოსათვლელად გამოიყენება ისეთი პოპულარული საძიებო სისტემები, როგორიცაა Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube და Baidu. მნიშვნელოვანია აღინიშნოს, რომ TIOBE ინდექსი არ ეხება საუკეთესოპროგრამირების ენა ან ენა, რომელშიც კოდის ხაზების უმეტესობა ყოფილანდაწერილი.

ინდექსი შეიძლება გამოყენებულ იქნას იმის შესამოწმებლად, არის თუ არა თქვენი პროგრამირების უნარები განახლებული ან სტრატეგიული გადაწყვეტილების მისაღებად, თუ რომელი პროგრამირების ენა უნდა იქნას მიღებული ახალი პროგრამული სისტემის შექმნისას. შეგიძლიათ იხილოთ TIOBE ინდექსის განმარტება.

2017 წლის ოქტომბერი 2016 წლის ოქტომბერი პროგრამირების ენა რეიტინგები
1 1 ჯავა12.431% -6.37%
2 2 C8.374% -1.46%
3 3 C++5.007% -0.79%
4 4 C#3.858% -0.51%
5 5 პითონი3.803% +0.03%
6 6 JavaScript3.010% +0.26%
7 7 PHP2.790% +0.05%
8 8 Visual Basic.NET2.735% +0.08%
9 11 ასამბლეის ენა2.374% +0.14%
10 13 რუბი2.324% +0.32%
11 15 დელფი/ობიექტი პასკალი2.180% +0.31%
12 9 პერლ1.963% -0.53%
13 19 MATLAB1.880% +0.26%
14 23 ნაკაწრი1.819% +0.69%
15 18 1.684% -0.06%
16 12 სვიფტი1.668% -0.34%
17 10 მიზანი-C1.513% -0.75%
18 14 Visual Basic1.420% -0.57%
19 20 PL/SQL1.408% -0.12%
20 16 წადი1.357% -0.45%

სხვა პროგრამირების ენები

პროგრამირების ენების სრული ტოპ 50 ჩამოთვლილია ქვემოთ. ეს მიმოხილვა არაოფიციალურად ქვეყნდება, რადგან შეიძლება ენა გამოგვრჩეს. თუ გაქვთ შთაბეჭდილება, რომ პროგრამირების ენა აკლია, გთხოვთ შეგვატყობინოთ მისამართზე. გთხოვთ ასევე შეამოწმოთ ყველა პროგრამირების ენის მიმოხილვარომ ვაკვირდებით.

თანამდებობაპროგრამირების ენარეიტინგები
21 SAS1.296%
22 Transact-SQL1.184%
23 COBOL1.143%
24 ფორტრანი0.999%
25 დარტი0.998%
26 0.982%
27 ABAP0.800%
28 კრისტალი0.710%
29 სკალა0.706%
30 (ვიზუალური) FoxPro0.674%
31 ლუა0.665%
32 პროლოგი0.622%
33 ადა0.605%
34 Apex0.578%
35 ლისპი0.577%
36 VBScript0.549%
37 LabVIEW0.517%
38 ერლანგი0.508%
39 ალისა0.496%
40 ლოგო0.485%
41 კოტლინი0.456%
42 ავკ0.454%
43 ჯულია0.433%
44 ბაშ0.428%
45 სქემა0.423%
46 ჟანგი0.409%
47 Clojure0.405%
48 F#0.393%
49 მ.ლ.0.390%
50 გატეხვა0.369%

შემდეგი 50 პროგრამირების ენა

ენების შემდეგი სია აღნიშნავს #51-დან #100-მდე. ვინაიდან განსხვავებები შედარებით მცირეა, პროგრამირების ენები მხოლოდ ჩამოთვლილია (ანბანური თანმიმდევრობით).

  • 4th Dimension/4D, ABC, ActionScript, APL, AutoLISP, bc, Bourne shell, C shell, CFML, cg, CL (OS/400), Clipper, Common Lisp, Elixir, Elm, Euphoria, Forth, Groovy, Haskell, Icon , Inform, Io, J, Korn shell, Ladder Logic, Maple, MOO, Moto, MQL4, MUMPS, NATURAL, NXT-G, OCaml, OpenCL, OpenEdge ABL, Oz, PL/I, PostScript, PowerShell, Q, REXX, ბეჭედი, RPG (OS/400), Smalltalk, SPARK, SPSS, Stata, Tcl, Verilog, VHDL

ამ თვის ცვლილებები ინდექსში

ამ თვეში შემდეგიცვლილებები განხორციელდა ინდექსის განმარტებაში:

  • ნენად რაკოჩევიჩმა შესთავაზა წითელი პროგრამირების ენის დამატება TIOBE ინდექსში. ის აკმაყოფილებს ყველა მოთხოვნას და დებიუტს 117-ე პოზიციაზე.
  • არის უამრავი წერილი, რომელიც ჯერ კიდევ დასამუშავებელია. როგორც კი მეტი დრო იქნება, თქვენს წერილს უპასუხებენ. გთხოვთ მოთმინება.

ძალიან გრძელვადიანი ისტორია

უფრო დიდი სურათის სანახავად, გთხოვთ იხილოთ ქვემოთ მრავალი წლის წინანდელი პროგრამირების 10 საუკეთესო ენის პოზიციები. გთხოვთ გაითვალისწინოთ, რომ ესენი არიან საშუალოპოზიციები 12 თვის ვადით.

პროგრამირების ენა2017 2012 2007 2002 1997 1992 1987
ჯავა1 2 1 1 15 - -
C2 1 2 2 1 1 1
C++3 3 3 3 2 2 5
C#4 5 7 12 - - -
პითონი5 7 6 11 27 - -
Visual Basic.NET6 17 - - - - -
PHP7 6 4 5 - - -
JavaScript8 9 8 7 22 - -
პერლ9 8 5 4 4 11 -
ასამბლეის ენა10 - - - - - -
COBOL25 27 17 9 3 9 9
ლისპი31 12 15 13 8 5 2
პროლოგი32 30 25 15 19 12 3
პასკალი117 13 20 97 10 3 4

პროგრამირების ენების დიდების დარბაზი

დიდების დარბაზი, რომელშიც ჩამოთვლილია "წლის პროგრამირების ენის" ჯილდოს ყველა გამარჯვებული, ნაჩვენებია ქვემოთ. ჯილდო გადაეცემა პროგრამირების ენას, რომელიც აქვსრეიტინგის ყველაზე მაღალი ზრდა ერთ წელიწადში.

წელიწადიგამარჯვებული
2016 წადი
2015 ჯავა
2014 JavaScript
2013 Transact-SQL
2012 მიზანი-C
2011 მიზანი-C
2010 პითონი
2009 წადი
2008 C
2007 პითონი
2006 რუბი
2005 ჯავა
2004 PHP
2003 C++

შეცდომები და ცვლილებების მოთხოვნები

ეს არის ყველაზე მოთხოვნადი ცვლილებებისა და შეცდომების ტოპ 5. თუ თქვენ გაქვთ რაიმე შემოთავაზება ინდექსის გასაუმჯობესებლად, ნუ დააყოვნებთ ელ. ფოსტის გაგზავნას.

  1. გარდა " პროგრამირება“, ასევე სხვა მოთხოვნები, როგორიცაა „პროგრამირება ", "განვითარება" და " კოდირება" უნდა გამოსცადო.
  2. დაამატეთ მოთხოვნები სხვა ბუნებრივი ენებისთვის (გარდა ინგლისურისა). იდეა არის დაიწყოს ჩინური საძიებო სისტემით Baidu. ეს ყოფილანაწილობრივ განხორციელდა და უახლოეს თვეებში დასრულდება.
  3. დაამატეთ ყველა საძიებო ტერმინის მოთხოვნის სია, რომლებიც უარყოფილია. ეს არის იმისათვის, რომ მინიმუმამდე შემცირდეს განმეორებადი წერილების რაოდენობა Rails, JQuery, JSP და ა.შ.
  4. დაიწყეთ TIOBE ინდექსი მონაცემთა ბაზებისთვის, პროგრამული უზრუნველყოფის კონფიგურაციის მართვის სისტემებისთვის და აპლიკაციის ჩარჩოებისთვის.
  5. ზოგიერთი საძიებო სისტემა საშუალებას იძლევა შეკითხვის გვერდები, რომლებიც დამატებულია გასულ წელს. TIOBE ინდექსი მხოლოდ ახლახან დამატებულ გვერდებს უნდა აკონტროლებდეს.

ხშირად დასმული კითხვები (FAQ)

  • კითხვა: მაქვს თუ არა უფლება, ვაჩვენო TIOBE ინდექსი ჩემს ბლოგში/პრეზენტაციაში/პუბლიკაციაში?

    პასუხი: დიახ, ერთადერთი პირობაა მისი ორიგინალური წყაროს „www.site“ მითითება.

  • კითხვა: როგორ შემიძლია დავასახელო ახალი ენა TIOBE ინდექსში დასამატებლად?

    პასუხი: თუ ენა აკმაყოფილებს ჩამოთვლის კრიტერიუმებს (ე.ი. ის არის ტურინგი სრული და აქვს საკუთარი ვიკიპედიის ჩანაწერი, რომელიც მიუთითებს, რომ ის ეხება პროგრამირების ენას) და ის საკმარისად პოპულარულია (5000-ზე მეტი დათვალიერება +" პროგრამირება" Google-ისთვის), შემდეგ გთხოვთ დაწეროთ ელ.წერილი .

  • კითხვა: მე მინდა მქონდეს სრული მონაცემები TIOBE ინდექსის ნაკრები. ეს შესაძლებელია?

    პასუხი: ჩვენ დიდი ძალისხმევა დავხარჯეთ ყველა მონაცემის მოსაპოვებლად და TIOBE ინდექსის განახლებისთვის. ამის მცირე კომპენსაციის მიზნით, ჩვენ ვითხოვთ გადასახადს 5000 აშშ დოლარის ოდენობით მონაცემთა სრული ნაკრებისთვის. მონაცემთა ნაკრები მოქმედებს 2001 წლის ივნისიდან დღემდე. ის 2001 წელს დაიწყო 25 ენით და ახლა თვეში ერთხელ 150-ზე მეტ ენას ზომავს. მონაცემები ხელმისაწვდომია მძიმით გამოყოფილი. გთხოვთ დაუკავშირდითმეტი ინფორმაცია.

  • კითხვა: რატომ არის მიღებული მაქსიმუმი ჯგუფის რეიტინგის გამოსათვლელად, რატომ არაჯამი?

    _ კარგი, შენ ორივენაირად შეგიძლია და ორივე არასწორია. თუ აიღებთ ჯამს, მაშინ მიიღებთ კვეთას ორჯერ. თუ აიღებთ მაქსიმუმს, მაშინ გამოტოვებთ განსხვავებას. რომელი აირჩიოს? დავუშვათ, ვინმემ მოიფიქრა ახალი საძიებო ტერმინი, რომელიც ორიგინალის 10%-ს შეადგენს. თუ მაქსიმუმს აიღებ, არაფერი იცვლება. თუ თანხას აიღებთ, მაშინ რეიტინგები 10%-ით გაიზრდება. ასე რომ, თანხის აღება ზოგიერთისთვის სტიმული იქნება ენისთვის ყველა სახის ბუნდოვანი ტერმინის მოფიქრებისთვის. ამიტომაც გადავწყვიტეთ აეღოთ მაქსიმუმი.

    ამის გადაჭრის სწორი გზა, რა თქმა უნდა, არის ჯამის აღება და გადაკვეთის გამოკლება. ეს გამოიწვევს დამატებითი მოთხოვნების აფეთქებას, რომელიც უნდა შესრულდეს. დავუშვათ, ენას აქვს 15 ტერმინის დაჯგუფება, მაშინ თქვენ უნდა შეასრულოთ 32,768 მოთხოვნა (გადაკვეთების ყველა კომბინაცია). ასე რომ, როგორც ჩანს, ეს შეუძლებელია... თუ ვინმეს აქვს ამის გამოსავალი, გთხოვთ შეგვატყობინოთ.

  • კითხვა: რა დაემართა ჯავას 2004 წლის აპრილში? შეცვალეთ თქვენი მეთოდოლოგია?

    _ არა, მაშინ ჩვენ მეთოდოლოგია არ შეგვიცვლია. Google-მა შეცვალა თავისი მეთოდოლოგია. მათ შეასრულეს ზოგადი გაწმენდითი მოქმედება, რათა მოეშორებინათ ყველა სახის ვებსაიტი, რომელიც იყო გაშლილი. შედეგად, დიდი ვარდნა იყო ისეთ ენებზე, როგორიცაა Java და C++. მომავალში ასეთი რყევების შესამცირებლად, ამ ინციდენტიდან რამდენიმე თვის შემდეგ დავამატეთ კიდევ ორი ​​საძიებო სისტემა (MSN და Yahoo).

  • კითხვა: რატომ გამოიყენება YouTube, როგორც საძიებო სისტემა TIOBE ინდექსისთვის?

    პასუხი: უპირველეს ყოვლისა, YouTube ყველა რეიტინგის 10%-ზე ნაკლებს ითვლის, ამიტომ მას თითქმის არ აქვს რაიმე გავლენა ინდექსზე. YouTube დაემატა ექსპერიმენტად. ის კვალიფიცირდება TIOBE ინდექსზე Alexa-ზე მაღალი რანგის გამო. YouTube არის ახალგაზრდა პლატფორმა (ასე რომ პოპულარობის მაჩვენებელია) და YouTube-ზე ხელმისაწვდომია საკმაოდ ბევრი ლექციები, პრეზენტაციები, პროგრამირების რჩევები და ენის შესავალი.

კარგი პროგრამისტები იყენებენ დიდი მოთხოვნით, ენის კარგად ფლობა წარმოუდგენლად ღირებულია. ცოდნა სხვადასხვა ენებზეპროგრამირება ყველასთვის არ არის, არც ისე ადვილია, მაგრამ ენების საბაზისო გაგება შეიძლება იყოს გამოსადეგი, ან უბრალოდ ინტერესის გამო, მაშინაც კი, თუ არ გსურთ გახდეთ კოდის ოსტატი.

აქ არის 10 ყველაზე პოპულარული ენებიპროგრამირება!

1. ჯავა
ჯავა არის საუკეთესო არჩევანიროგორც ერთ-ერთი ყველაზე პოპულარული პროგრამირების ენა, რომელიც გამოიყენება ასაშენებლად სერვერის აპლიკაციებივიდეო თამაშებისა და მობილური აპლიკაციებისთვის. ის ასევე არის Android აპლიკაციის განვითარების მთავარი საწყისი წერტილი, რაც მას მრავალი პროგრამისტის ფავორიტად აქცევს. ამ პროგრამირების ენის სლოგანია "დაწერე ერთხელ, გაუშვი ყველგან". პორტატული და მრავალპლატფორმიანი ენა.

2. პითონი
Python - ჩვენ უკვე ვისაუბრეთ ამ პროგრამირების ენაზე სტატიაში "რატომ არის Python ასე პოპულარული?" იგი ძირითადად გამოიყენება მონაცემთა ანალიზისთვის ვებ აპლიკაციების შესაქმნელად. Python ხშირად რეკლამირებულია, როგორც ყველაზე მარტივი პროგრამირების ენა, მარტივი და პირდაპირი სინტაქსით.

3. C++
ხშირად ეს არის პირველი პროგრამირების ენა, რომელიც ისწავლება კოლეჯში. ეს ენაარის ობიექტზე ორიენტირებული.

4. ლალი
Ruby არის ვებ აპლიკაციის მთავარი პროვაიდერი. რუბი პოპულარულია სწავლის სიმარტივისა და ძალის გამო. მის ცოდნას დღეს დიდი მოთხოვნა აქვს.

5. JavaScript
JavaScript, რომელსაც არაფერი აქვს საერთო ჯავასთან, პროგრამისტებს შორის კიდევ ერთი საყვარელი ენაა, რადგან ის არა მხოლოდ ფართოდ არის გავრცელებული, არამედ თითქმის ყველგან გამოიყენება. JavaScript საშუალებას აძლევს დეველოპერებს დაამატოთ ინტერაქტიული ელემენტებიმათ ვებსაიტებზე. ამ ენის წყალობით, ყველა სამუშაო შეიძლება კიდევ უფრო გაადვილდეს.

6. C#
C# - გამოითქმის C-sharp და არა C-ჰეშთეგი Twitter-ის ფანებისთვის - არის ენა, რომელიც გამოიყენება Microsoft-ის აპლიკაციების შესაქმნელად. C#-ში სინტაქსი თითქმის იდენტურია java-ს. თუ კარგად ფლობთ Java-ს, ალბათ ამ ენის სწავლა მარტივად შეგიძლიათ. თუ გსურთ Windows-ისთვის აპლიკაციების შემუშავება, მაშინ C# საუკეთესო არჩევანია.

7. RHP
PHP - რომელიც ნიშნავს ჰიპერტექსტის პროცესორს, თუ გაინტერესებთ - ხშირად გამოიყენება დინამიური მონაცემებით დატვირთულ ვებსაიტებთან და აპლიკაციების განვითარებასთან ერთად. ეს დიდ ძალას და საფუძველს აძლევს ძრავებს და საიტებს, როგორიცაა WordPress ან Facebook. რაც ნამდვილად მაგარია არის ის, რომ PHP არის ღია წყარო, არის უამრავი უფასო წინასწარ ჩაშენებული მოდული, რომელიც შეგიძლიათ აიღოთ, შეცვალოთ და მიიღოთ კარგი შედეგი. PHP არის ის, რაც ახალმა ვებ დეველოპერებმა უნდა ისწავლონ.

8. მიზანი-გ
Objective-C არის პროგრამირების ენა iOS აპლიკაციები. რეკომენდებული საწყისი წერტილი მათთვის, ვისაც სურს Apple-ის და iPhone-ისა და iPad-ის აპებთან მუშაობა.

9.SQL
SQL არის მონაცემთა ბაზის შეკითხვის ენა (SQL ნიშნავს სტრუქტურირებული შეკითხვის ენას), რომელიც იდეალურია, როდესაც საქმე დიდ მონაცემებს ეხება. SQL გაძლევთ საშუალებას აკონტროლოთ მონაცემები მასიური მონაცემთა ბაზებიდან. თითქმის ყველა აპლიკაციას აქვს სერვერის მხრიდან მონაცემთა ბაზები და SQL არის ენა, რომელიც ეხმარება ამ მონაცემებთან ურთიერთობას.

10. C (SI)
C. არის უფრო რთული პროგრამირების ენების წინამორბედი, როგორიცაა Java და C#. Si არის კარგი გადაწყვეტილება, თუ გსურთ დაბალი დონის აპლიკაციებთან მუშაობა. იგი ფართოდ გამოიყენება ჩაშენებული სისტემებისთვის, მაგალითად, როგორც თქვენი ტელევიზორის პროგრამული უზრუნველყოფა ან ოპერაციული სისტემათვითმფრინავი, ასევე კომპიუტერული ოპერაციული სისტემებისთვის.



რაიმე შეკითხვა?

შეატყობინეთ შეცდომას

ტექსტი, რომელიც გაეგზავნება ჩვენს რედაქტორებს: