Avec le développement rapide des technologies de l'information, de plus en plus de langages de programmationcontinuent d'apparaître dans nos vies, et en même temps, cela nous offre également davantage d'opportunités d'emploi. Regardons l'ère des langages de programmation : Lisp (1958), Smalltalk (1972), Objective-C (1984), Haskell (1990), OCaml (1996), etc. Ce sont toutes des langues du siècle dernier.
L'éditeur de cet article a choisi plusieurs langages récents : Reason, Swift, Kotlin, Dart comme objets de recherche, et a résumé 10 fonctionnalités :
1 opérateur de pipeline
Syntaxe de la raison
let newScore = me.score |> double |> (it) => add(7, it) |> (it) => boundScore(0, 100, it);
La méthode d'écriture JavaScript correspondante :
boundScore(0, 100, add(7, double(me.score)));
Et es a déjà une proposition correspondante : tc39/proposal-pipeline-operator
2 Correspondance de modèles
Syntaxe Kotlin
when (x) { in 1..10 -> print("x is in the range") in validNumbers -> print("x is valid") !in 10..20 -> print("x is outside the range") else -> print("none of the above") }
3 Programmation réactive (Rx) construite dans le langage
Syntaxe Dart
input.onKeyDown .where((e) => e.ctrlKey && e.code == 'Enter') .forEach((e) => dispatch(addTodoAction(e.target.value)));
4 Paramètres par défaut de la fonction lambda
Syntaxe Kotlin (l'utiliser comme paramètre par défaut)
strings .filter{ it.length == 5 } .map{ it.toUpperCase() }
Comparaison avec JavaScript
strings .filter{ it => it.length === 5 } .map{ it => it.toUpperCase() }
5 Déstructuration
Syntaxe de raison :
let someInts = (10, 20);let (ten, twenty) = someInts;type person = {name: string, age: int}; let somePerson = {name: "Guy", age: 30};let {name, age} = somePerson;
Syntaxe Kotlin
data class Person(val name: String, val age: Int)val(name, age) = Person("Guy", 20)
es6 a déjà une déstructuration de tableau, es8 ajoute une déstructuration d'objet
Opérateur en cascade à 6 opérateurs
Syntaxe Dart
querySelector('#button') // Get an object. ..text = 'Confirm' // Use its members. ..classes.add('important') ..onClick.listen((e) => dispatch(confirmedAction()));
Méthode d'écriture JavaScript correspondante
var button = querySelector('#button'); button.text = 'Confirm'; button.classed.add('important'); button.onClick.listen((e) => dispatch(confirmedAction()));
Si vous utilisez jQuery, la méthode d'écriture est fondamentalement la même que celle de Dart, mais les deux sont fondamentalement différentes
7 if expressionsIf expressions<. 🎜>
Syntaxe Kotlinval result = if (param == 1) { "one"} else if (param == 2) { "two"} else { "three"}
val result = try { count() } catch (e: ArithmeticEx
}
let add = (x, y) => x + y; /* same as (x) => (y) => x + y; */let five = add(2,3); /* 5 */let alsoFive = add(2)(3); /* 5 */let addFive = add(5); /* y => 5 + y; */let eleven = addFive(6); /* 11 */let twelve = addFive(7); /* 12 */
extension Int { func repetitions(task: () -> Void) { for _ in 0..<self { task() } } }3.repetitions({ print("Hello!") })// Hello!// Hello!// Hello!
Top dix des langages de programmationde l'ère actuelle Lequel aimez-vous
Classement des langages de programmation TIOBE en septembre 2017
Qu'est-ce que PHP ? Pourquoi devriez-vous choisir d’apprendre PHP comme langage de programmation ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!