Bahasa pemrograman apa yang digunakan? Bahasa pemrograman yang berbeda dan area penerapannya. Kuliah di Yandex

Permainan komputer- ini adalah bisnis besar. Total pendapatan industri video game AS mencapai $23,5 miliar pada tahun lalu, naik 5% dari tahun 2014. Di balik setiap game hebat terdapat programmer yang memberikan kontribusi signifikan terhadap produk akhir. Tentu saja untuk berkreasi permainan yang berbeda bahasa pemrograman yang berbeda digunakan. Pada artikel ini kami akan menyajikan kepada Anda beberapa yang paling populer.

Bahasa perakitan

Banyak game Sega dan Dendy ditulis dalam berbagai dialek bahasa rakitan, termasuk Super Mario Brothers.

Game Super Mario telah terjual lebih dari 70 juta kopi. IGN menyebut seri ketiga Super Mario Brothers sebagai game terhebat sepanjang masa.

bahasa C

Bahasa C masih menjadi salah satu bahasa pemrograman terpopuler karena relatif sederhana dan strukturnya jelas. id Software menggunakan C untuk membuat game Doom, pertama kali dirilis pada tahun 1993.

Doom disebut-sebut sebagai game FPS paling berpengaruh, menjadi prototipe dari banyak game orang pertama dan game 3D pada umumnya. Diperkirakan Doom memiliki sekitar 10 juta instalasi pada tahun 1995.

C++

Bahasa C++ digunakan untuk membuat banyak bahasa modern sistem operasi, perangkat lunak, permainan, dan mesin permainan. Berkat fleksibilitasnya, game dapat diporting dari PC ke konsol dengan relatif mudah. arah sebaliknya. Salah satu game paling populer yang ditulis dalam C++ adalah World of Warcraft.

Ini telah terjual 14 juta kopi sejak diluncurkan. 48% pelanggan tinggal di kawasan Asia, 22% dari Amerika Serikat. Wiki WoW berisi lebih dari 100.000 artikel.

C#

Dirancang oleh Microsoft pada tahun 2000, C# menjadi cukup populer di kalangan pengembang game. Unity engine, banyak digunakan untuk membuat game untuk PC, konsol dan perangkat seluler, terutama ditulis dalam C#. Salah satu game paling terkenal di kelas ini- Burung Marah.

Angry Birds adalah game iOS terpopuler ketiga sepanjang masa, tepat di belakang Candy Crush Saga dan Fruit Ninja. Biaya pengembangan versi pertama game ini adalah sekitar $140.000, jumlah yang sangat kecil untuk jenisnya. Empat orang mengerjakan game tersebut selama total sekitar delapan bulan.

Jawa

Java agaknya merupakan kerabat dari C#. Mereka saling mempengaruhi, keduanya memiliki pengumpul sampah dan berorientasi objek. Namun Java pada awalnya diposisikan sebagai bahasa yang tidak bergantung pada platform, yang berarti (secara desain) berfungsi sama persis di semua perangkat. Kisah sukses game yang ditulis di Java termasuk RuneScape dan Minecraft.

Versi alfa dari game ini dibuat hanya dalam 6 hari. Minecraft adalah game terlaris kedua di dunia. Awalnya disebut "Permainan Gua".

Ingin menemukan lebih banyak sumber daya pengembangan game dan bahkan mungkin mengembangkan sumber daya Anda sendiri? Melihat.

ruang operasi sistem Android setiap tahun ini tidak hanya menjadi OS yang cocok untuk itu pengguna biasa, tapi juga platform yang kuat untuk pengembang. Nah, apa yang dapat Anda lakukan: Google selalu menemui pengembang di tengah jalan, menyediakan peluang yang luas Dan alat yang ampuh sebuah aria yang dibumbui dengan dokumentasi informatif.
Selain itu, kita tidak boleh melupakan fakta bahwa “robot hijau” adalah pemimpin dalam popularitas di antara sistem operasi seluler. Hal ini menunjukkan bahwa dengan pemrograman untuk Android, Anda akan memiliki audiens yang luas, yang nantinya bisa mendatangkan keuntungan. Secara umum, Android adalah semacam “oasis” bagi para pengembang. Oleh karena itu, kami telah menyiapkan untuk Anda pilihan bahasa pemrograman khusus, serta lingkungan pengembangan untuk OS ini.
Perhatian, sedikit nasehat untuk pemula
: Pemrograman Android mungkin tampak sulit atau terlalu monoton pada awalnya. Tip: Periksa tautan ke dokumentasi yang berguna sebelum Anda memulai, dan pemrograman di Android tidak akan menjadi masalah bagi Anda.

Java adalah alat utama bagi pengembang Android

Lingkungan pengembangan: Android Studio (IntelliJ IDEA), plugin Eclipse + ADT
Cocok untuk berbagai macam tugas
Java adalah bahasa utama bagi programmer Android, yang wajib dimiliki oleh pemula. Dasar kode sumber Android ditulis dalam bahasa ini, jadi mudah untuk mengetahui alasan kebanyakan orang memilih bahasa ini. Aplikasi yang ditulis dalam Java dijalankan di Android menggunakan mesin virtual ART (atau Dalvik di kacang jeli dan banyak lagi versi sebelumnya Android) adalah analog dari mesin virtual Java, itulah sebabnya Google memiliki litigasi serius dengan Oracle.

Google aktif saat ini secara resmi mendukung lingkungan pengembangan yang cukup kuat Studio Android, yang dikumpulkan berdasarkan IDE Intellij dari JetBrains. Selain itu, jangan lupakan dokumentasi yang sangat mendetail dari Google, yang mencakup segala hal mulai dari match_parent dan wrap_content hingga konstruktor, konstanta, dan metode utama kelas JavaHttpConnection - sangat layak untuk dibaca.

Juga, jangan lupakan Eclipse, lingkungan yang sangat populer bagi pemrogram Java. DENGAN plugin resmi ADT dari Google, toolkit ini akan menjadi senjata ampuh dan ringan di tangan Anda. Namun orang-orang dari Mountain View berhenti mendukung Eclipse sejak musim panas lalu, memberi jalan kepada Android Studio baru. Direkomendasikan untuk digunakan pada PC yang lemah.

Dokumentasi yang diperlukan:

C++ adalah alat yang ampuh di tangan seorang master

Lingkungan Pengembangan Utama: Android Studio (versi 1.3 dan lebih tinggi), Visual Studio 2015, QtCreator
Cocok untuk mesin permainan dan aplikasi intensif sumber daya.
C++ - tidak muda, tapi sangat bahasa yang kuat program, yang merayakan hari jadinya yang ketiga puluh tahun lalu. Itu ditemukan pada tahun 1985 berkat upaya kawan Björn Stroustrup dan masih menempati posisi teratas bahasa pemrograman paling populer. "Pro" memberi Anda kebebasan penuh tindakan, membatasi Anda hanya pada batas yang wajar.


Sepanjang keberadaan Android, banyak kerangka kerja dan alat pengembangan untuk C++ telah dibuat. Saya secara khusus ingin menyoroti Qt dan IDE QtCreator yang terkenal, yang memungkinkan Anda mengembangkan aplikasi lintas platform untuk Windows, Windows Phone, Windows RT, iOS, SailfishOS dan Android (Dulu daftar ini juga menyertakan Symbian). Selain itu, Anda mendapatkan perpustakaan Tulip yang berisi wadah, algoritme, dan templat, yang menyerap yang terbaik dari Java dan Android. Dan terakhir, Anda mendapatkan banyak modul QT berbeda untuk level tinggi dan pekerjaan tingkat rendah dengan sistem. Kode pelayan Anda yang rendah hati khusus di C++ dan Qt.

Tahun lalu, di konferensi Windows: The Next Champter, perhatian luas diberikan pada lingkungan pengembangan yang cukup populer Studio Visual 2015. Salah satu inovasi utama adalah dukungan pengembangan aplikasi untuk Windows Phone dan Android - Microsoft mencoba meningkatkan jumlah aplikasi untuk OS-nya.

Juga tidak mungkin untuk tidak menyebutkan hal itu android resmi Studio mulai mendukung NDK. Dengan bantuan NDK, Anda dapat menggunakan grafik OpenGL saat bekerja dengan Android. Jika Anda membutuhkan kecepatan dan efisiensi - pilih NDK! Metode pengembangan ini sangat cocok untuk game engine yang membutuhkan performa tinggi.

Pengembangan Android di C atau C++ mungkin tampak lebih mudah dibandingkan di Java, namun meskipun faktanya bahasa ini menawarkan Anda kebebasan penuh dalam bertindak dan tidak membatasi langkah Anda, ada beberapa hal yang perlu diperhatikan. fitur tertentu, yang akan memakan banyak waktu untuk mempelajarinya - bukan tanpa alasan C++ dibandingkan dengan nunchucks (senjata luar biasa yang, sayangnya, membutuhkan keterampilan hebat). Namun, mengembangkan aplikasi Android di C dan C++ bisa jadi menyenangkan.

Dokumentasi yang diperlukan:

Bahasa lainnya

Sekaranglah waktunya untuk membicarakan bahasa dan kerangka kerja lain yang kurang populer namun juga menarik bagi mereka. Namun, karena berbagai alasan, Anda tidak akan sesukses saat menggunakan Java dan C++.

Korona (Skrip LUA)


Cocok untuk pembuatan game dan aplikasi sederhana
Jika karena alasan tertentu Anda tidak ingin mempelajari Java atau memahami pembuatan antarmuka melalui XML, Anda dapat memilih sendiri IDE ini. Corona adalah lingkungan pengembangan yang cukup ringan, kode yang harus ditulis dalam LUA yang cukup ringan (pecinta Pascal akan menghargainya).

Toolkit ini akan membantu Anda saat menulis game 2D sederhana, yang memiliki perpustakaan untuk 2D=objek, suara, jaringan, dan mesin permainan. Game yang dibuat bekerja dengan OpenGL, yang berarti efisiensi tinggi. Bagus untuk pemula, mungkin di sinilah Anda bisa membuat yang pertama aplikasi seluler di Android!


Dokumentasi yang diperlukan:

Adobe PhoneGap (HTML5, JavaScript, CSS)


Cocok untuk membuat aplikasi yang tidak memerlukan banyak sumber daya
Jika Anda sudah familiar dengan HTML, CSS dan JavaScript, Anda bisa mencoba PhoneGap sebagai alternatif. IDE ini akan memungkinkan Anda membangun aplikasi lengkap yang dikembangkan dalam bahasa pemrograman dan markup yang disebutkan di atas.

nyatanya aplikasi yang sudah jadi dari PhoneGap adalah WebView paling sederhana, yang dianimasikan oleh bantuan JavaScript. Dengan menggunakan berbagai API, Anda dapat menggunakan berbagai fungsi perangkat seperti pada aplikasi asli. Menariknya, aplikasi tersebut dikompilasi di server dan kemudian tersedia untuk digunakan di iOS, Android, Windows Phone, Web OS, dan BlackBerry OS. Dengan fungsionalitas lintas platform yang luas, pengembangan aplikasi dapat dipercepat secara signifikan.


Dokumentasi yang diperlukan:

Sekering (JavaScript dan UX)


Cocok untuk membuat aplikasi sederhana dan kompleks
Ketika orang berbicara tentang alat pengembangan Android, mereka sering memikirkan Fuse. Alat ini adalah salah satu alat yang paling ramah pengguna, dan dapat menghadirkan berbagai kemungkinan dan manfaat bagi pengembang.

Logika utama aplikasi Fuse dibangun di atas JavaScript - bahasa yang sederhana dan mudah dipahami dengan ambang masuk yang rendah. Fondasi antarmuka diwakili oleh markup UX - dapat dimengerti secara intuitif oleh semua orang. Nah, “kelebihan” lingkungan akan memungkinkan Anda menerapkan perubahan secara langsung saat aplikasi berjalan di perangkat atau emulator Anda - seperti di Android Studio 2.0 dan lebih tinggi. Dengan Fuse, pengembangan aplikasi Android menjadi mudah dan menyenangkan.

Dokumentasi yang diperlukan:

Kata-kata "mendekati akhir"

Tentu saja, kami belum menunjukkan kepada Anda semua alat pengembangan yang ada saat ini. Melalui artikel ini kami ingin menjelaskan kepada Anda bahwa menjadi seorang developer Android tidaklah begitu sulit, meski seringkali membutuhkan usaha dan ketekunan. Dunia pembangunan di bawah platform seluler terbuka untuk Anda, tapi ingat: langkah pertama selalu ada di tangan Anda.

Proses menciptakan kecerdasan buatan, pada pandangan pertama, tampaknya merupakan tugas yang agak rumit. Menonton ini contoh yang indah AI, Anda bisa memahami apa yang harus dibuat program yang menarik dengan AI itu mungkin. Tergantung pada tujuannya, diperlukan tingkat pengetahuan yang berbeda. Beberapa proyek memerlukan pengetahuan mendalam tentang AI, proyek lain hanya membutuhkan pengetahuan bahasa pemrograman, namun pertanyaan utama, yang berdiri di depan programmer. Bahasa mana yang harus dipilih untuk pemrograman kecerdasan buatan? Berikut daftar bahasa AI yang mungkin berguna.

PELAT


Bahasa komputer pertama yang digunakan untuk menciptakan kecerdasan buatan adalah LISP. Bahasa ini cukup fleksibel dan dapat diperluas. Fitur seperti rapid prototyping dan makro sangat berguna dalam menciptakan AI. LISP adalah bahasa yang berubah tugas yang kompleks menjadi yang sederhana. Sistem yang kuat sifatnya yang berorientasi objek menjadikan LISP salah satu bahasa pemrograman terpopuler untuk kecerdasan buatan.

Jawa

Keuntungan utama dari bahasa yang kaya fitur ini adalah: transparansi, portabilitas, dan pemeliharaan. Manfaat lain dari bahasa Java adalah keserbagunaannya. Jika Anda seorang pemula, Anda akan senang mengetahui bahwa ada ratusan video tutorial online yang akan membuat pembelajaran Anda lebih mudah dan efektif.

Fitur utama java adalah: kemudahan debugging, pengalaman pengguna yang baik, kemudahan penggunaan proyek-proyek besar. Proyek yang dibuat menggunakan bahasa Java memiliki antarmuka yang menarik dan sederhana.

Prolog

Bahasa pemrograman simbolis interaktif ini populer untuk proyek yang membutuhkan logika. Memiliki kekuatan dan dasar yang fleksibel, Ini banyak diterapkan pada pemrograman non-numerik, pembuktian teorema, pemrosesan bahasa alami, pembuatan sistem pakar dan kecerdasan buatan pada umumnya.

Prolog adalah bahasa deklaratif dengan logika formal. Pengembang kecerdasan buatan menghargainya karena abstraksi tingkat tinggi, mekanisme pencarian bawaan, non-determinisme, dll.

ular piton

Python banyak digunakan oleh programmer karena tata bahasa dan sintaksisnya yang bersih, desain yang bagus. Berbagai struktur data, sekumpulan kerangka pengujian, rasio tingkat tinggi Dan tingkat rendah pemrograman yang menjadikan Python salah satu bahasa pemrograman paling populer untuk kecerdasan buatan.

Sejarah perkembangan AI

Untuk melihat hubungan antara AI dan bahasa pemrograman, mari kita lihat peristiwa terpenting dalam sejarah AI. Semuanya dimulai pada tahun 1939, ketika robot Elektro diperkenalkan di Pameran Dunia. Robot berikutnya dibuat pada tahun 1951 oleh Edmund Berkeley.

Robbie si Robot dibuat pada tahun 1956. Sayangnya, belum ada informasi bagaimana pengembangannya. Pada tahun 1958, bahasa pemrograman LISP ditemukan. Meskipun bahasa ini dikembangkan 60 tahun yang lalu, bahasa ini masih menjadi bahasa utama bagi banyak program kecerdasan buatan.

Pada tahun 1961, UNIMATE dibangun. Ini yang pertama robot industri, yang diproduksi secara massal. Robot ini digunakan oleh General Motors untuk mengerjakannya jalur produksi. Untuk membuat UNIMATE, para ilmuwan menggunakan Val, sebuah variabel assembler. Bahasa ini terdiri dari frasa sederhana, perintah monitor, dan instruksi yang cukup jelas.

Sistem kecerdasan buatan Dendral dibangun pada tahun 1965. Ini membantu untuk dengan mudah menentukan struktur molekul senyawa organik. Sistem ini ditulis dalam Lisp.

Pada tahun 1966, Weizenbaum menciptakan Eliza, mitra percakapan virtual pertama. Salah satu model paling terkenal bernama Dokter, dia menjawab pertanyaan dengan gaya psikoterapis. Bot ini diimplementasikan dengan membandingkan sampel peralatan. Versi pertama Eliza ditulis dalam SLIP, daftar pemrosesan bahasa dikembangkan oleh Weizenbaum. Kemudian, salah satu versinya ditulis ulang di Lisp.

Robot seluler pertama yang diprogram di Lisp adalah Sheki. Dengan menggunakan program pemecahan masalah berupa bantalan dan sensor, leher digerakkan, menyalakan dan mematikan lampu, naik turun, membuka pintu, menutup pintu, mendorong benda, dan memindahkan benda. Sheki bergerak dengan kecepatan 5 km per jam.

Dalam 15 tahun berikutnya, dunia menyaksikan banyak penemuan menakjubkan: Robot Denning Sentry, LMI Lambda, Omnibot 2000, drone Predator MQ-1, Ferby, robot anjing AIBO, dan Honda ASIMO.

Pada tahun 2003, iRobot menemukan robot penyedot debu Roomba. Dikembangkan di Lisp, penyedot debu otonom ini membersihkan lantai menggunakan algoritma tertentu. Ia mendeteksi rintangan dan menghindarinya.


Bahasa pemrograman apa yang Anda gunakan untuk mengembangkan program AI? Tulis tentang pekerjaan Anda di komentar atau di grup VKontakte kami.




“Tidak,” kataku, “aku tidak mau.”
- Baiklah, pelajari Perl.

C++

Pada JavaScript

Jawa

ular piton

Perl

Selamat datang

“Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Kami mewawancarai di C++ dan diterima.
Hari pertama. Skuter, kantin berisik dengan warna asam, makan siang. Sup terbuat dari paralelepiped persegi panjang plastik.
- Apakah Anda ingin menulis dalam C++? - mereka bertanya padaku.
“Tidak,” kataku, “aku tidak mau.”
- Baiklah, pelajari Perl.
Saya telah menulis Perl sejak saat itu dan sangat menyukainya."

Pengembang Yandex menceritakan kisah ini kepada kami saat kami mempersiapkan publikasi ini dan melakukan survei. Kami bertanya kepada pengembang kami apa yang mereka tulis untuk mengetahui bahasa pemrograman mana yang paling populer di Yandex. Lebih dari separuh pengembang perusahaan ikut serta dalam survei ini, dan rinciannya adalah sebagai berikut:

Banyak pengembang menggunakan berbagai bahasa dalam pekerjaan mereka, jadi kami meminta mereka untuk memilih salah satu - bahasa yang paling sering mereka gunakan untuk menulis. Pemimpinnya adalah lima bahasa: C++, JavaScript, Java, Python, dan Perl. Semua bahasa ini berbeda, dan masing-masing bahasa memecahkan masalahnya dengan lebih baik. Oleh karena itu, mereka digunakan secara berbeda di Yandex.

C++ - bahasa klasik untuk besar dan sistem yang kompleks, di mana kinerja sangat penting. Yang paling penting biasanya tertulis di atasnya, komponen dasar aplikasi. Misalnya, mesin pencari Yandex, Browser, dan Maps ditulis dalam C++.

Pada JavaScript Mereka terutama menulis elemen situs web interaktif, seperti animasi atau permainan browser. Bahasa ini sangat banyak digunakan di browser untuk menulis antarmuka - yang berinteraksi langsung dengan pengguna. Antarmuka web semua layanan Yandex ditulis dalam JavaScript.

Jawa- Ini bahasa universal, tempat Anda dapat menulis aplikasi apa pun, baik itu game Flappy Bird atau server web yang memproses jutaan permintaan per menit. Meskipun namanya tidak ada hubungannya dengan JavaScript. Pengembangan di dalamnya akan lebih cepat dibandingkan di C++, namun programnya mungkin menjadi sedikit lebih lambat. Fitur Java memungkinkan Anda membuat program yang berjalan di hampir semua perangkat - mulai dari telepon hingga microwave. Misalnya, Pasar dan Musik ditulis dalam bahasa Java.

ular piton adalah bahasa yang ramah programmer dengan sintaks sederhana. Ini adalah tempat yang bagus untuk mulai belajar pemrograman. Python banyak digunakan di kami administrasi sistem, tetapi cocok untuk menyelesaikan hampir semua tugas kecuali pemrosesan volume besar data. Melakukan banyak hal dengan Python lebih mudah dan cepat dibandingkan dengan C++, namun programnya tidak akan seproduktif itu. Ini pilihan cerdas, ketika produktivitas tidak terlalu penting atau tugas perlu diselesaikan dengan cepat. Ditulis dengan Python bagian server Disk, dan juga digunakan di Direct, layanan internal dan banyak proyek lainnya.

Perl dibuat untuk pemrosesan teks - misalnya, untuk mengekstrak fakta dari teks. Maskot bahasanya - seekor unta, tanpa keanggunan, tetapi kuat dan efektif - secara akurat mencerminkan karakteristiknya. Ini adalah bahasa yang ringkas namun menantang, tetapi berfungsi dengan baik. Di Yandex, ini digunakan, misalnya, untuk menganalisis data dalam sistem spanduk dan dalam pengembangan bagian server dari beberapa layanan - misalnya, Direct.

Dari sudut pandang tugas, pemilihan bahasa adalah mencari keseimbangan antara efisiensi program, kualifikasi programmer dan waktu yang dihabiskan untuk bekerja. Tentu saja, pada kenyataannya segalanya menjadi sedikit lebih rumit, itulah sebabnya terkadang cerita seperti yang kami mulai terjadi. “Saya melamar posisi C++, diterima bekerja di Perl, saya menulis dengan Python, tapi saya suka Scala,” ini juga terjadi.

Dari sudut pandang pengembang, memilih bahasa adalah masalah preferensi. Beberapa orang sangat menyukai bahasanya sendiri, sementara yang lain sangat menyukai masalah yang dipecahkannya. Misalnya, beberapa orang lebih menyukai tugas-tugas mendasar dan menulis basis pencarian dalam C++, sementara yang lain lebih suka melakukan apa yang terlihat oleh pengguna dan menulis antarmuka dalam JavaScript. Yang lain lagi menulis dalam bahasa tertentu hanya karena mereka mengetahuinya secara menyeluruh. Dan beberapa, sebaliknya, siap untuk mencoba hal baru dan berpartisipasi dalam berbagai proyek.

Lebih dari enam ribu orang membuat Yandex, seperempatnya adalah pengembang. Pada umumnya, tidak masalah bahasa apa yang digunakan seseorang untuk menulis. Jika dia seorang profesional, akan selalu ada sesuatu untuknya tugas yang sesuai. Saat ini kami memiliki 90 lowongan untuk pengembang di sepuluh kota. Jika Anda ingin mencoba, silakan (Anda dapat melihat lowongan di kantor Berlin).

","contentType":"teks/html"),,"proposeBody":("source":"

“Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Kami mewawancarai di C++ dan diterima.
Hari pertama. Skuter, kantin berisik dengan warna asam, makan siang. Sup terbuat dari paralelepiped persegi panjang plastik.
- Apakah Anda ingin menulis dalam C++? - mereka bertanya padaku.
“Tidak,” kataku, “aku tidak mau.”
- Baiklah, pelajari Perl.
Saya telah menulis Perl sejak saat itu dan sangat menyukainya."

Pengembang Yandex menceritakan kisah ini kepada kami saat kami mempersiapkan publikasi ini dan melakukan survei. Kami bertanya kepada pengembang kami apa yang mereka tulis untuk mengetahui bahasa pemrograman mana yang paling populer di Yandex. Lebih dari separuh pengembang perusahaan ikut serta dalam survei ini, dan rinciannya adalah sebagai berikut:

Banyak pengembang menggunakan berbagai bahasa dalam pekerjaan mereka, jadi kami meminta mereka untuk memilih salah satu - bahasa yang paling sering mereka gunakan untuk menulis. Pemimpinnya adalah lima bahasa: C++, JavaScript, Java, Python, dan Perl. Semua bahasa ini berbeda, dan masing-masing bahasa memecahkan masalahnya dengan lebih baik. Oleh karena itu, mereka digunakan secara berbeda di Yandex.

C++- bahasa klasik untuk sistem besar dan kompleks yang mengutamakan kinerja. Komponen dasar aplikasi yang paling penting biasanya tertulis di dalamnya. Misalnya, mesin pencari Yandex, Browser, dan Maps ditulis dalam C++.

Pada JavaScript Mereka terutama menulis elemen situs web interaktif, seperti animasi atau permainan browser. Bahasa ini sangat banyak digunakan di browser untuk menulis antarmuka - yang berinteraksi langsung dengan pengguna. Antarmuka web semua layanan Yandex ditulis dalam JavaScript.

Jawa adalah bahasa universal di mana Anda dapat menulis aplikasi apa pun, baik itu game Flappy Bird atau server web yang memproses jutaan permintaan per menit. Meskipun namanya tidak ada hubungannya dengan JavaScript. Pengembangannya akan berjalan lebih cepat dibandingkan C++, namun programnya mungkin menjadi sedikit lebih lambat. Fitur Java memungkinkan Anda membuat program yang berjalan di hampir semua perangkat - mulai dari telepon hingga microwave. Misalnya, Pasar dan Musik ditulis dalam bahasa Java.

ular piton adalah bahasa yang ramah programmer dengan sintaks sederhana. Ini adalah tempat yang bagus untuk mulai belajar pemrograman. Di negara kita, Python banyak digunakan dalam administrasi sistem, namun cocok untuk memecahkan hampir semua masalah, kecuali untuk memproses data dalam jumlah besar. Melakukan banyak hal dengan Python lebih mudah dan cepat dibandingkan dengan C++, namun programnya tidak akan seproduktif itu. Ini adalah pilihan cerdas ketika kinerja tidak terlalu penting atau tugas perlu diselesaikan dengan cepat. Bagian server Disk ditulis dengan Python, dan juga digunakan di Direct, layanan internal, dan banyak proyek lainnya.

Perl dibuat untuk pemrosesan teks - misalnya, untuk mengekstrak fakta dari teks. Maskot bahasanya - seekor unta, tanpa keanggunan, tetapi kuat dan efektif - secara akurat mencerminkan karakteristiknya. Ini adalah bahasa yang ringkas namun menantang, tetapi berfungsi dengan baik. Di Yandex, ini digunakan, misalnya, untuk menganalisis data dalam sistem spanduk dan dalam pengembangan bagian server dari beberapa layanan - misalnya, Direct.

Dari sudut pandang tugas, pemilihan bahasa adalah mencari keseimbangan antara efisiensi program, kualifikasi programmer dan waktu yang dihabiskan untuk bekerja. Tentu saja, pada kenyataannya segalanya menjadi sedikit lebih rumit, itulah sebabnya terkadang cerita seperti yang kami mulai terjadi. “Saya melamar posisi C++, diterima bekerja di Perl, saya menulis dengan Python, tapi saya suka Scala,” ini juga terjadi.

Dari sudut pandang pengembang, memilih bahasa adalah masalah preferensi. Beberapa orang sangat menyukai bahasanya sendiri, sementara yang lain sangat menyukai masalah yang dipecahkannya. Misalnya, beberapa orang lebih menyukai tugas-tugas mendasar dan menulis basis pencarian dalam C++, sementara yang lain lebih suka melakukan apa yang terlihat oleh pengguna dan menulis antarmuka dalam JavaScript. Yang lain lagi menulis dalam bahasa tertentu hanya karena mereka mengetahuinya secara menyeluruh. Dan beberapa, sebaliknya, siap untuk mencoba hal baru dan berpartisipasi dalam berbagai proyek.

Lebih dari enam ribu orang membuat Yandex, seperempatnya adalah pengembang. Pada umumnya, tidak masalah bahasa apa yang digunakan seseorang untuk menulis. Jika dia seorang profesional, akan selalu ada tugas yang cocok untuknya. Saat ini kami memiliki 90 lowongan untuk pengembang di sepuluh kota. Jika Anda ingin mencoba, silakan (Anda dapat melihat lowongan di kantor Berlin).

“Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Kami mewawancarai di C++ dan diterima.
Hari pertama. Skuter, kantin berisik dengan warna asam, makan siang. Sup terbuat dari paralelepiped persegi panjang plastik.
- Apakah Anda ingin menulis dalam C++? - mereka bertanya padaku.
“Tidak,” kataku, “aku tidak mau.”
- Baiklah, pelajari Perl.
Saya telah menulis Perl sejak saat itu dan sangat menyukainya."

Pengembang Yandex menceritakan kisah ini kepada kami saat kami mempersiapkan publikasi ini dan melakukan survei. Kami bertanya kepada pengembang kami apa yang mereka tulis untuk mengetahui bahasa pemrograman mana yang paling populer di Yandex. Lebih dari separuh pengembang perusahaan ikut serta dalam survei ini, dan rinciannya adalah sebagai berikut:

Banyak pengembang menggunakan berbagai bahasa dalam pekerjaan mereka, jadi kami meminta mereka untuk memilih salah satu - bahasa yang paling sering mereka gunakan untuk menulis. Pemimpinnya adalah lima bahasa: C++, JavaScript, Java, Python, dan Perl. Semua bahasa ini berbeda, dan masing-masing bahasa memecahkan masalahnya dengan lebih baik. Oleh karena itu, mereka digunakan secara berbeda di Yandex.

C++- bahasa klasik untuk sistem besar dan kompleks yang mengutamakan kinerja. Komponen dasar aplikasi yang paling penting biasanya tertulis di dalamnya. Misalnya, mesin pencari Yandex, Browser, dan Maps ditulis dalam C++.

Pada JavaScript Mereka terutama menulis elemen situs web interaktif, seperti animasi atau permainan browser. Bahasa ini sangat banyak digunakan di browser untuk menulis antarmuka - yang berinteraksi langsung dengan pengguna. Antarmuka web semua layanan Yandex ditulis dalam JavaScript.

Jawa adalah bahasa universal di mana Anda dapat menulis aplikasi apa pun, baik itu game Flappy Bird atau server web yang memproses jutaan permintaan per menit. Meskipun namanya tidak ada hubungannya dengan JavaScript. Pengembangannya akan berjalan lebih cepat dibandingkan C++, namun programnya mungkin menjadi sedikit lebih lambat. Fitur Java memungkinkan Anda membuat program yang berjalan di hampir semua perangkat - mulai dari telepon hingga microwave. Misalnya, Pasar dan Musik ditulis dalam bahasa Java.

ular piton adalah bahasa yang ramah programmer dengan sintaks sederhana. Ini adalah tempat yang bagus untuk mulai belajar pemrograman. Di negara kita, Python banyak digunakan dalam administrasi sistem, namun cocok untuk memecahkan hampir semua masalah, kecuali untuk memproses data dalam jumlah besar. Melakukan banyak hal dengan Python lebih mudah dan cepat dibandingkan dengan C++, namun programnya tidak akan seproduktif itu. Ini adalah pilihan cerdas ketika kinerja tidak terlalu penting atau tugas perlu diselesaikan dengan cepat. Bagian server Disk ditulis dengan Python, dan juga digunakan di Direct, layanan internal, dan banyak proyek lainnya.

Perl dibuat untuk pemrosesan teks - misalnya, untuk mengekstrak fakta dari teks. Maskot bahasanya - seekor unta, tanpa keanggunan, tetapi kuat dan efektif - secara akurat mencerminkan karakteristiknya. Ini adalah bahasa yang ringkas namun menantang, tetapi berfungsi dengan baik. Di Yandex, ini digunakan, misalnya, untuk menganalisis data dalam sistem spanduk dan dalam pengembangan bagian server dari beberapa layanan - misalnya, Direct.

Dari sudut pandang tugas, pemilihan bahasa adalah mencari keseimbangan antara efisiensi program, kualifikasi programmer dan waktu yang dihabiskan untuk bekerja. Tentu saja, pada kenyataannya segalanya menjadi sedikit lebih rumit, itulah sebabnya terkadang cerita seperti yang kami mulai terjadi. “Saya melamar posisi C++, diterima bekerja di Perl, saya menulis dengan Python, tapi saya suka Scala,” ini juga terjadi.

Dari sudut pandang pengembang, memilih bahasa adalah masalah preferensi. Beberapa orang sangat menyukai bahasanya sendiri, sementara yang lain sangat menyukai masalah yang dipecahkannya. Misalnya, beberapa orang lebih menyukai tugas-tugas mendasar dan menulis basis pencarian dalam C++, sementara yang lain lebih suka melakukan apa yang terlihat oleh pengguna dan menulis antarmuka dalam JavaScript. Yang lain lagi menulis dalam bahasa tertentu hanya karena mereka mengetahuinya secara menyeluruh. Dan beberapa, sebaliknya, siap untuk mencoba hal baru dan berpartisipasi dalam berbagai proyek.

Lebih dari enam ribu orang membuat Yandex, seperempatnya adalah pengembang. Pada umumnya, tidak masalah bahasa apa yang digunakan seseorang untuk menulis. Jika dia seorang profesional, akan selalu ada tugas yang cocok untuknya. Saat ini kami memiliki 90 lowongan untuk pengembang di sepuluh kota. Jika Anda ingin mencoba, silakan (Anda dapat melihat lowongan di kantor Berlin).

","contentType":"text/html"),,"authorId":"5105614","slug":"77617","canEdit":false,"canComment":false,"isBanned":false,"canPublish" :false,"viewType":"old","isDraft":false,"isSubscriber":false,"commentsCount":36,"modificationDate":"Rabu 19 Mar 2014 15:04:00 GMT+0000 (UTC)" ,"showPreview":true,"approvedPreview":("source":""Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Mereka mewawancarai dalam C++, dan mereka menerimanya.","html ": ""Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Mereka mewawancarai dalam C++, dan mereka menerimanya.","contentType":"text/html"),,"proposePreview":( "source": ""Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Mereka mewawancarai dalam C++, mereka menerimanya.","html":""Suatu ketika, lebih dari tujuh tahun lalu, saya datang untuk wawancara di Yandex. Diwawancarai dalam C++, diterima.","contentType":"text/html"),"titleImage":null,"tags":[("displayName":"Teknologi Yandex"," slug": "tekhnologii-yandeksa","categoryId":"150002777","url":"/blog/company??tag=tekhnologii-yandeksa"),("displayName":"yandex-team","slug" :"yandex -team","categoryId":"1776655","url":"/blog/company??tag=yandex-team")],"isModerator":false,"commentsEnabled":true,"url" :"/ blog/perusahaan/77617","urlTemplate":"/blog/company/%slug%","fullBlogUrl":"https://yandex.ru/blog/company","addCommentUrl":"/blog /createComment/ company/77617","updateCommentUrl":"/blog/updateComment/company/77617","addCommentWithCaptcha":"/blog/createWithCaptcha/company/77617","changeCaptchaUrl":"/blog/api/captcha/ baru", "putImageUrl":"/blog/image/put","urlBlog":"/blog/perusahaan","urlEditPost":"/blog/562884407eba6ef16f8045c3/edit","urlSlug":"/blog/post/ generateSlug", "urlPublishPost":"/blog/562884407eba6ef16f8045c3/publish","urlUnpublishPost":"/blog/562884407eba6ef16f8045c3/batalkan publikasi","urlRemovePost":"/blog/562884407eba6ef16f8045c3/re movePost" ,"urlDraft":"/blog /company/77617 /draft","urlDraftTemplate":"/blog/company/%slug%/draft","urlRemoveDraft":"/blog/562884407eba6ef16f8045c3/removeDraft","urlTagSuggest":"/blog/api/suggest/ perusahaan"," urlAfterDelete":"/blog/perusahaan","isAuthor":false,"subscribeUrl":"/blog/api/subscribe/562884407eba6ef16f8045c3","unsubscribeUrl":"/blog/api/unsubscribe/562884407eba6ef16f8045c3", "urlEditPostPage": "/blog/company/562884407eba6ef16f8045c3/edit","urlForTranslate":"/blog/post/translate","urlRelateIssue":"/blog/post/updateIssue","urlUpdateTranslate":"/blog/post /updateTranslate", "urlLoadTranslate":"/blog/post/loadTranslate","urlTranslationStatus":"/blog/company/77617/translationInfo","urlRelatedArticles":"/blog/api/relatedArticles/company/77617"," author":( "id":"5105614","uid":("value":"5105614","lite":false,"hosted":false),,"aliases":("13":"kadaner "),"login ":"minushuman","display_name":("name":"Alexey","avatar":("default":"21377/5105614-16014116","empty":false)),, "alamat":" [dilindungi email]","defaultAvatar":"21377/5105614-16014116","imageSrc":"https://avatars.mds.yandex.net/get-yapic/21377/5105614-16014116/islands-middle","isYandexStaff": benar),"originalModificationDate":"2014-03-19T11:04:39.000Z","socialImage":("orig":("fullPath":"https://avatars.mds.yandex.net/get-yablogs /49865/file_1465551301378/orig")))))">

Bahasa pemrograman apa yang ditulis di Yandex?

“Suatu ketika, lebih dari tujuh tahun yang lalu, saya datang untuk wawancara di Yandex. Kami mewawancarai di C++ dan diterima.
Hari pertama. Skuter, kantin berisik dengan warna asam, makan siang. Sup terbuat dari paralelepiped persegi panjang plastik.
- Apakah Anda ingin menulis dalam C++? - mereka bertanya padaku.
“Tidak,” kataku, “aku tidak mau.”
- Baiklah, pelajari Perl.
Saya telah menulis Perl sejak saat itu dan sangat menyukainya."

Pengembang Yandex menceritakan kisah ini kepada kami saat kami mempersiapkan publikasi ini dan melakukan survei. Kami bertanya kepada pengembang kami apa yang mereka tulis untuk mengetahui bahasa pemrograman mana yang paling populer di Yandex. Lebih dari separuh pengembang perusahaan ikut serta dalam survei ini, dan rinciannya adalah sebagai berikut:

Banyak pengembang menggunakan berbagai bahasa dalam pekerjaan mereka, jadi kami meminta mereka untuk memilih salah satu - bahasa yang paling sering mereka gunakan untuk menulis. Pemimpinnya adalah lima bahasa: C++, JavaScript, Java, Python, dan Perl. Semua bahasa ini berbeda, dan masing-masing bahasa memecahkan masalahnya dengan lebih baik. Oleh karena itu, mereka digunakan secara berbeda di Yandex.

C++- bahasa klasik untuk sistem besar dan kompleks yang mengutamakan kinerja. Komponen dasar aplikasi yang paling penting biasanya tertulis di dalamnya. Misalnya, mesin pencari Yandex, Browser, dan Maps ditulis dalam C++.

Pada JavaScript Mereka terutama menulis elemen situs web interaktif, seperti animasi atau permainan browser. Bahasa ini sangat banyak digunakan di browser untuk menulis antarmuka - yang berinteraksi langsung dengan pengguna. Antarmuka web semua layanan Yandex ditulis dalam JavaScript.

Jawa adalah bahasa universal di mana Anda dapat menulis aplikasi apa pun, baik itu game Flappy Bird atau server web yang memproses jutaan permintaan per menit. Meskipun namanya tidak ada hubungannya dengan JavaScript. Pengembangannya akan berjalan lebih cepat dibandingkan C++, namun programnya mungkin menjadi sedikit lebih lambat. Fitur Java memungkinkan Anda membuat program yang berjalan di hampir semua perangkat - mulai dari telepon hingga microwave. Misalnya, Pasar dan Musik ditulis dalam bahasa Java.

ular piton adalah bahasa yang ramah programmer dengan sintaks sederhana. Ini adalah tempat yang bagus untuk mulai belajar pemrograman. Di negara kita, Python banyak digunakan dalam administrasi sistem, namun cocok untuk memecahkan hampir semua masalah, kecuali untuk memproses data dalam jumlah besar. Melakukan banyak hal dengan Python lebih mudah dan cepat dibandingkan dengan C++, namun programnya tidak akan seproduktif itu. Ini adalah pilihan cerdas ketika kinerja tidak terlalu penting atau tugas perlu diselesaikan dengan cepat. Bagian server Disk ditulis dengan Python, dan juga digunakan di Direct, layanan internal, dan banyak proyek lainnya.

Perl dibuat untuk pemrosesan teks - misalnya, untuk mengekstrak fakta dari teks. Maskot bahasanya - seekor unta, tanpa keanggunan, tetapi kuat dan efektif - secara akurat mencerminkan karakteristiknya. Ini adalah bahasa yang ringkas namun menantang, tetapi berfungsi dengan baik. Di Yandex, ini digunakan, misalnya, untuk menganalisis data dalam sistem spanduk dan dalam pengembangan bagian server dari beberapa layanan - misalnya, Direct.

Dari sudut pandang tugas, pemilihan bahasa adalah mencari keseimbangan antara efisiensi program, kualifikasi programmer dan waktu yang dihabiskan untuk bekerja. Tentu saja, pada kenyataannya segalanya menjadi sedikit lebih rumit, itulah sebabnya terkadang cerita seperti yang kami mulai terjadi. “Saya melamar posisi C++, diterima bekerja di Perl, saya menulis dengan Python, tapi saya suka Scala,” ini juga terjadi.

Dari sudut pandang pengembang, memilih bahasa adalah masalah preferensi. Beberapa orang sangat menyukai bahasanya sendiri, sementara yang lain sangat menyukai masalah yang dipecahkannya. Misalnya, beberapa orang lebih menyukai tugas-tugas mendasar dan menulis basis pencarian dalam C++, sementara yang lain lebih suka melakukan apa yang terlihat oleh pengguna dan menulis antarmuka dalam JavaScript. Yang lain lagi menulis dalam bahasa tertentu hanya karena mereka mengetahuinya secara menyeluruh. Dan beberapa, sebaliknya, siap untuk mencoba hal baru dan berpartisipasi dalam berbagai proyek.

Lebih dari enam ribu orang membuat Yandex, seperempatnya adalah pengembang. Pada umumnya, tidak masalah bahasa apa yang digunakan seseorang untuk menulis. Jika dia seorang profesional, akan selalu ada tugas yang cocok untuknya. Saat ini kami memiliki 90 lowongan untuk pengembang di sepuluh kota. Jika Anda ingin mencobanya - (Anda dapat melihat lowongan di kantor Berlin).

Pada topik kali ini saya akan bercerita tentang bahasa pemrograman
Mengapa dibutuhkan dan di mana digunakan?


Bahasa pemrograman:
Sistem simbol formal yang dirancang untuk merekam program komputer.
Bahasa pemrograman mendefinisikan seperangkat aturan:
- Leksikal.
- Sintaksis.
- Semantik.
Mereka bertanya penampilan program dan tindakan yang akan dilakukan komputer di bawah kendalinya.

Sasaran Spoiler"> Fungsi

Bahasa pemrograman untuk menulis program komputer
yang digunakan untuk mengirimkan instruksi ke komputer untuk melakukan ini atau itu
proses komputasi dan organisasi kontrol perangkat individu.

Sasaran Spoiler"> Tugas

Bahasa pemrograman berbeda dari bahasa alami dalam hal itu
yang dirancang untuk mengirimkan perintah dan data dari seseorang ke komputer,
sedangkan bahasa alami digunakan untuk berkomunikasi antar manusia.
Definisi tersebut dapat digeneralisasikan:
“Bahasa pemrograman” adalah cara menyampaikan perintah, perintah, dan pedoman tindakan yang jelas.
padahal bahasa manusia juga berfungsi untuk bertukar informasi.

Sasaran Spoiler"> Eksekusi

Bahasa pemrograman mungkin menggunakan konstruksi khusus untuk mendefinisikannya
dan manipulasi struktur data dan kontrol proses komputasi.

Bahasa pemrograman apa saja yang ada:
DASAR dan Pascal:

BASIC selalu dianggap yang paling dalam bahasa yang sederhana pemrograman.
Pascal adalah yang paling banyak bahasa yang cocok untuk belajar pemrograman.
Tapi sekarang tidak demikian. Ya, BASIC itu sederhana. Tapi itu diciptakan pada suatu waktu
ketika umat manusia belum punya pengalaman menciptakan sistem komputer,
dan didasarkan pada prinsip-prinsip yang ketinggalan jaman dan tidak dapat dibenarkan.
Sebenarnya, tidak ada ide holistik yang mendasar di jantung BASIC.
Saat ini ada bahasa pemrograman yang sederhana namun lebih visual dan tertutup secara ideologis daripada BASIC.
Pascal cocok untuk tujuan pendidikan, karena untuk itulah ia diciptakan.
Orang-orang dengan cepat belajar memecahkan masalah algoritmik dengannya.
Namun ternyata mempelajari Pascal hanya berguna untuk menulis program dalam Pascal.
Dan jika Anda perlu membuat yang asli produk perangkat lunak, Pascal ternyata merepotkan.
Dan orang yang hanya mengetahui Pascal harus belajar kembali, yang seringkali lebih sulit,
daripada belajar bahasa yang benar dan teknologi dari awal.
Apa alternatifnya:
Ada banyak alternatif. Saat ini ada banyak sekali (ekosistem) bahasa pemrograman,
yang terus berkembang, terpecah dan menyatu.
Bahasa-bahasa tersebut adalah Forth, Ruby dan Python.
Kami mencantumkan faktor-faktor kunci yang mengatur seleksi:
Menyediakan bahasa alat tingkat tinggi kontrol atas integritas dan kode bebas kesalahan pada tahap pertama perakitan proyek. Hal ini berlaku terutama untuk bahasa Java, Haskell, dan Python. Mereka mencoba membuat bahasa sehingga pemrogram tidak bisa membuat kesalahan. Dan apabila masih terdapat kesalahan, maka harus ditemukan pada tahap kompilasi (penerjemahan). Secara khusus, kesalahan ketik dalam satu karakter tidak boleh menyebabkan program dikompilasi dan dijalankan (dan ini terjadi, misalnya, dalam bahasa BASIC dan Perl, jika tidak ditentukan secara eksplisit modus khusus ketat. Bahasa Java dibuat dalam konteks menganalisis kesalahan umum dan masalah yang muncul dalam proyek dalam bahasa C++. Pencipta Java mencoba memperkenalkan batasan tersebut ke dalam sintaksis dan paradigma dasar itu kesalahan khas Pemrogram C++ tidak bisa muncul di proyek Java. Ini sangat ide penting: Jika Anda dengan terampil membingkai diri sendiri, Anda bisa mendapatkan keuntungan. Perlu dicatat bahwa di perusahaan besar Seringkali pemrogram diberikan daftar aturan desain program dan seperangkat konstruksi yang tidak dapat digunakan dalam kode, meskipun bahasa itu sendiri mengizinkannya. Fleksibilitas suatu bahasa yang berlebihan terkadang berbahaya, karena memungkinkan pemrogram menulis program yang berlumpur dan membingungkan. Bahasa pemrograman baru melakukan hal ini agar tidak menggoda pemrogram dan tidak memberi mereka kesempatan untuk menulis secara membingungkan dan penuh kesalahan.
Kebersihan dan kejelasan kode, keterbacaan kode. Ruby sepertinya sudah maju paling jauh di sini. Hari ini di semua situs resmi perangkat lunak Di antara keunggulan pertama adalah “kealamian sintaksis” atau “kedekatan dengan bahasa alami” (biasanya bahasa Inggris). Tentu saja ini merupakan faktor penting. Waktu telah lama berlalu ketika manusia beradaptasi dengan komputer dan dengan susah payah menerjemahkan ide dan algoritma mereka ke dalam bahasa mesin nol dan satu. Saat ini, komputer menjadi semakin selaras dengan bahasa manusia. Itu nyaman. Kecepatan penulisan program meningkat, meskipun hal ini biasanya mengorbankan kecepatan eksekusi dan, secara umum, rasionalitas program yang dihasilkan.
Kemurnian dan integritas paradigma yang mendasari bahasa. Misalnya, Smalltalk dan Ruby didasarkan pada paradigma berorientasi objek murni, sedangkan Haskell didasarkan pada paradigma fungsional murni. Kejelasan ini berguna agar pemrogram memiliki gambaran yang jelas tentang model yang dibatasi dan apa yang perlu dipikirkannya saat merancang suatu program.
Kesederhanaan sintaksis, transparansi interpretasi konstruksi bahasa. Misalnya, sintaks bahasa Python sangat sederhana sehingga deskripsinya muat dalam satu halaman. Hal ini memungkinkan programmer untuk selalu memahami apa yang ditulisnya. Kesederhanaan sintaksis, yang di satu sisi merupakan keterbatasan, bisa sangat berguna, karena memungkinkan Anda menulis dengan jelas, program yang dapat dibaca dan tidak memikirkan bagaimana sebenarnya kompiler (penerjemah) akan menerjemahkan konstruksi ini atau itu.
Keserbagunaan dan fleksibilitas, kemampuan menulis program yang kompleks pendek dan manis. Bahasa Perl, Ruby, dan Python sekarang memiliki properti ini. Namun perlu dicatat bahwa universalitas bahasa seperti itu juga dapat memiliki kelemahan, karena sering kali menyebabkan kerumitan sintaksis yang tidak perlu. Misalnya, Perl sangat serbaguna, kaya akan berbagai desain dan hal-hal rumit yang memungkinkan Anda menulis logika yang rumit sangat singkat (“sebentar tentang banyak hal”). Akibatnya, sangat mudah untuk menulis program yang tidak mungkin dibaca. Namun, hal yang sama berlaku untuk bahasa C dan C++. Bahasa Ruby dan Python mendapatkan keserbagunaan dengan kerugian lebih sedikit dibandingkan Perl dan C++.
Tersedianya perpustakaan standar dan ketersediaan sarana untuk mengintegrasikan proyek satu sama lain dan dengan sistem dan teknologi lain. Saat ini, semua bahasa yang menghargai diri sendiri menyediakan alat untuk bekerja dengan database, untuk membuat antarmuka grafis, untuk diajak bekerja sama protokol jaringan dan membuat aplikasi dengan arsitektur client-server. Saat ini ada persaingan yang terus menerus antar bahasa skrip pemrograman seperti PHP, Ruby, Python, Perl, dll. dalam seberapa baik pengembangan alat integrasi mereka berbagai teknologi. Beberapa orang tahu cara bekerja dengan OpenGL, beberapa tidak.
Kemampuan untuk mengembangkan sistem adaptif. Bahasanya harus sedemikian rupa sehingga program yang ditulis di dalamnya tidak lamban dan kikuk. Bahasa harus memungkinkan kemungkinan membuat perubahan kecil pada kode untuk beradaptasi dengan tugas yang berubah secara dinamis dan semakin kompleks. Landasan kemampuan adaptasi perangkat lunak bahasa adalah modularitas multi-level yang fleksibel (seperti pada bahasa Jawa, Ruby, Python, Tcl) kesederhanaan alat untuk mengekspor dan mengimpor fungsionalitas (artinya alat yang ditujukan untuk memungkinkan proyek berbagi kelas, objek, dan fungsi satu sama lain) dan sarana untuk mendukung pemfaktoran ulang - perubahan revolusioner global pada kode yang melewati modul dan ditujukan untuk meningkatkan keterbacaan kode dan menghilangkan beban fungsionalitas yang tidak perlu yang terakumulasi selama proses evolusi.
Ada nominasi lainnya. Python adalah pemenang hari ini dalam kategori "kesederhanaan sintaksis", dan Perl lebih nyaman untuk pemrosesan teks dan skrip CGI dibandingkan bahasa lainnya. Bahasa Python pada prinsipnya dibuat sebagai bahasa integrator. Ini dapat digunakan untuk mengintegrasikan berbagai aplikasi dan buat paket Anda sendiri dan bahasa makro baru.
Jadi, Perl memiliki banyak segi, Python itu sederhana, Python itu indah, Ruby juga hebat, Java dan C berteknologi maju. Ada banyak nominasi dan tidak ada pemenang yang jelas, sama seperti tidak ada pakaian yang cocok untuk cuaca musim panas, hujan, atau musim dingin. Suhu dan kelembapan hanyalah dua parameter, dan masih banyak lagi parameter lainnya dalam bahasa pemrograman.
Industri teknologi komputer menghadapi berbagai tantangan. Satu bahasa cocok untuk satu tugas, dan bahasa lainnya cocok untuk tugas lainnya. Perl dan PHP adalah bahasa populer di industri pemrograman WEB. Hanya sedikit orang yang menulis situs web dinamis bahasa mesin tipe C, karena “permainan ini tidak akan sepadan dengan usahanya.” Namun saat menulis sistem operasi dan alat sistem, saat memecahkan masalah yang mengutamakan kecepatan, saat mengembangkan sistem besar yang memerlukannya berkualitas tinggi dan kemampuan manufaktur, bahasa C adalah standar de facto dan de jure. Fisikawan dan matematikawan (termasuk anak sekolah) wajib mengenalnya bahasa fungsional pemrograman seperti Lisp, Haskell atau Mathematica. Mathematica memungkinkan Anda membangun berbagai model dan menjelajahinya secara interaktif, memvisualisasikannya sepanjang proses (Bahasa yang menyediakan alat untuk visualisasi data harus menjadi diskusi terpisah.) hasil dan menganalisisnya menggunakan statistik dan metode lainnya. Selain itu, Mathematica memungkinkan Anda melakukan perhitungan simbolik, misalnya mencari turunan dan antiturunan fungsi, menghitung jumlah deret tak hingga, dll. Bahasa Prolog, Caml, Clips, Assembler bagus, menarik, dan unik dengan caranya sendiri. - Mengenal prinsip-prinsipnya berguna bagi setiap programmer.
  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat