[PYTHON] Merkmale der Programmiersprache [Memo]
Motivation zum Schreiben dieses Artikels
Ich habe gerade ein funktionierendes Portfolio erstellt und in den letzten Tagen habe ich meine Zeit damit verbracht, nach Unternehmen zu suchen, um an der Vorbereitung von Vorstellungsgesprächen teilzunehmen und diese zu studieren.
Abgesehen davon, dass ich letztes Jahr meine eigene Zusammenfassung des Rails-Tutorials veröffentlicht und letzten Monat eine Notiz über CicleCI hinterlassen habe, habe ich nicht viel gepostet, aber die Ausgabe ist immer noch wichtig, daher gebe ich Ihnen den Inhalt der handschriftlichen Notizen. Ich beschloss, es Qiita zu überlassen.
Vorerst werde ich über webbasierte Sprachen schreiben.
Webbasierte Sprache
In der Webbranche werden verschiedene Arten von Sprachen verwendet, von denen jede ihre eigenen Merkmale und ihre Ungeeignetheit aufweist.
Einige von ihnen sind derzeit in der Ingenieurgemeinschaft beliebt und werden aktiv genutzt, während andere allmählich zum Vermächtnis werden und nicht mehr verwendet werden.
Die Verwendung einer Sprache, die in der Community beliebt und aktiv ist, trägt zur Anwendungsleistung, Entwicklungseffizienz und Benutzerfreundlichkeit bei und verbessert auch die Fähigkeiten als Ingenieur. Selbst wenn Sie diese Sprache nicht tatsächlich verwenden, Es ist nützlich, die Eigenschaften zu kennen.
Für die dynamische und statische Eingabe war dieser Artikel hilfreich.
Dynamische und statische Eingabe
Dynamisch getippte Sprache
Ruby
- Eine Sprache, die in allen Bereichen verwendet wird, insbesondere ** häufig in Start-up-Unternehmen und Medienunternehmen **.
Aus traditionellen Gründen wird PHP häufig für Social Games und EC verwendet, und Java wird häufig für Ad-Tech verwendet.
- ** Existenz eines Webframeworks namens Ruby on Rails **
- Viele nützliche Bibliotheken (Edelsteine) sind verfügbar
- Reichlich japanische Informationen und niedrige Lernkosten (Entwickler ist Japaner)
―― Aus den oben genannten Gründen ist es beliebt, die Community ist aktiv und es besteht eine hohe Wahrscheinlichkeit, dass es auch in Zukunft verwendet wird.
Es scheint jedoch, dass es in den letzten Jahren einen Abwärtstrend gegeben hat.
PHP
- ** Wordpress hat eine große Präsenz **
CMS-Anwendung (Content Management System) (App zum Erstellen von Websites wie Blogs), die mit PHP erstellt wurde
- ** Vorhandensein von Web-Frameworks wie Laravel und CakePHP **
- Reichlich japanische Informationen und niedrige Lernkosten
- ** Es war der De-facto-Standard für die Entwicklung sozialer Spiele **.
Daher gibt es viele Ingenieure, die PHP verwenden können, und es hat den Vorteil, dass es einfach ist, Entwickler zu gewinnen (man kann sagen, dass es einen Nachteil gibt, dass das Angebot im Vergleich zur Nachfrage groß ist, wenn man den Rückgang von Soshage selbst berücksichtigt).
Python
- In Übersee beliebter als in Japan (** Interne Standardsprache von Google **)
- ** Vorhandensein von Web-Frameworks wie Django und Flask **
- ** De-facto-Standard beim maschinellen Lernen **
Es gibt keinen Vorteil gegenüber Ruby oder PHP als serverseitige Sprache, aber es wird von Unternehmen verwendet, die maschinelle Lerndienste entwickeln, um die maschinelle Lernsprache und die serverseitige Sprache zu vereinheitlichen. tun
- Es gibt ein gemischtes Problem der Versionen 2.7 und 3
JavaScript
- ** Erforderlich für die Front-End-Entwicklung zusammen mit Node.js **, einer serverseitigen Ausführungsumgebung
--AltJS (eine alternative Sprache, die JavaScript als statisch typisierte Sprache behandelt) ** Typoskript ist beliebt ** und wird in Zukunft zum Mainstream
- ** SPA (Single Page Application) ist beliebt **
Eine Anwendung, die Datenkommunikation durchführt, ohne von einer Seite zu wechseln.
** SPA-Frameworks wie vue.js und React ** sind sehr beliebt
-Verwendet für die Entwicklung von Desktop-Apps und Smartphone-Apps mit Tools wie ** Electron **
Statisch typisierte Sprache
Go(Golang)
- Eine in den letzten Jahren recht beliebte Sprache, die häufig in Kombination mit ** Microservices ** (wie Mercari) verwendet wird.
- Wird hauptsächlich zur ** Entwicklung von Hochgeschwindigkeits-API-Servern ** verwendet **
Bei der Entwicklung eines API-Servers mit nur einfachen Funktionen ist kein leistungsstarkes Webframework wie Rails oder Laravel erforderlich, und Go eignet sich hervorragend als Sprache für die schnelle Bearbeitung von Anforderungen.
- Wird mit Docker und Terraform verwendet
** Es ist mit Docker kompatibel, da es das Bild verkleinern kann **
- ** Gute Kompatibilität mit GCP-Diensten **
Wird in GAE verwendet, einem PaaS
- Geringe Lernkosten und einfach einzuführen
JVM-Sprache
Die JVM-basierte Sprache ist eine kompilierte Sprache, und der nach der Kompilierung generierte Bytecode wird auf einer virtuellen Maschine namens JVM (Java Virtual Machine) ausgeführt.
Ursprünglich war es nur Java, aber wenn der generierte Bytecode dasselbe Format hat, wird er auf JVM ausgeführt, sodass neben Java auch Sprachen wie Scala und Kotlin verwendet werden, die als JVM-basierte Sprachen bezeichnet werden. ..
Java
- Hohe Nutzungsrate in SIer
Im Web-System hat Kotlin die Mainstream-Position aufgegeben. Es wird nicht für die Entwicklung neuer Dienste in Webunternehmen verwendet.
- Viele von Ad-Tech-Unternehmen verwendet
――Es ist eine Legacy-Sprache, aber ** verfügt über viel angesammeltes Know-how **
Kotlin
- ** besser Erste Wahl in Java ** (eine Sprache, die mit Java aufwärtskompatibel ist)
- ** Android offizielle Entwicklungssprache **
Beliebt und häufig auf der Serverseite verwendet
- Niedrigere Lernkosten als bei Scala
- Mit Go als statisch typisierte Sprache konkurrieren
Als JVM-Sprache unterscheidet sie sich dadurch, dass sie das Know-how und die Ressourcen von Java nutzen kann.