DEV Community

julz751
julz751

Posted on • Edited on

Présentation

#fr

Table des matières

Kotlin vs JAVA

Il ne s’agit pas ici d’une critique de JAVA, en effet, JAVA, avec ses nombreuses libraires est encore là pour de nombreuses années, mais il faut avouer que Kotlin palie beaucoup à certaines faiblesses d’un langage certes un peu vieillissant… Listons ensemble de manière bien subjective les trois meilleures améliorations que Kotlin apporte à JAVA.

Top 3

3 Les exceptions

En JAVA, le compilateur nous force à soit relancer ou attraper une exception, même lorsque l’on sait, en tant que développeur que celle-ci ne sera pas levée. En Kotlin, comme dans les langages plus modernes (C#, par exemple), les exceptions sont dites « Unchecked » et laissent le développeur attraper ou lancer les exceptions quand il estime que cela est nécessaire.

Après, il vaut mieux éviter cela aussi
try {
    // Mon Programme
}
catch (e: Exception) {
    // Oups
}
Enter fullscreen mode Exit fullscreen mode

2 Adieu les NullPointerExceptions

En JAVA, la plupart des variables peuvent prendre comme valeur null. C’est d’ailleurs leur valeur par default. Ce qui n’a jamais bien sûr causé de problèmes à aucun développeur, non? Si tu n’es pas d’accord, Kotlin est un langage dit «Null Safe », c’est-à-dire que le code ne compilera pas si une de tes variables sont null. En fait les valeurs par default d’une variable ne doivent pas être assignées à null. Bien sûr que tu peux assigner la valeur d’une variable à null avec le code suivant :

val number: Int? = null
Enter fullscreen mode Exit fullscreen mode

Comme ça, tu sais quand vérifier si ta variable est null ou non!

1 Beaucoup moins de Boilerplate !

Kotlin est un langage qui a pour ambition d’être concis, regardons ensemble ce POJO écrit en JAVA :

class Book {
private String title;
private Author author;
public String getTitle() {
 return title;
 }
public void setTitle(String title) 
{
 this.title = title;
}
public Author getAuthor() {
  return author;
 }
public void setAuthor(Author author) 
{
  this.author = author;
}
}
Enter fullscreen mode Exit fullscreen mode

Et en Kotlin:


data class Book(var title: String, var author: Author)
Enter fullscreen mode Exit fullscreen mode

Faut avouer… Même si nos IDE écrivent nos getters et setters pour nous, c’est quand même plus facile à lire

One more Thing…

Un petit peu de javascript, pour changer de JAVA, au fait Kotlin transpile aussi du Javascript, ES5 certes, personne n'est parfait.

console.log("10"+1) // retourne 101
console.log("10"-1) // retourne 9
Enter fullscreen mode Exit fullscreen mode

Et si je te disais que tu pouvais "overloader" tes opérateurs avec Kotlin:

Documentation

Liens utiles

Hashnode

voir le site

SlashDot

voir le site
Slashdot est un agrégateur de nouvelles portant sur les T.I, mais pas uniquement. Son public "nerd/geek" fait surtout remonter les informations autour des T.I

Le COBOL a encore de l'avenir Il représente encore 95% des transactions en face à face

42 Les deepfakes accessibles sur zoom?

Techcunch

voir le site
TechCrunch est un média en ligne portant sur les technologies et les start-ups. Il appartient à AOL/Verizon 👿

le bitcoin banni en Inde? Le pays veut faire sa propre crypto-monnaie, il est vrai qu'il y a un lien entre monnaie et souveraineté, mais est-ce que on peut vraiment contrôler et réguler le bitcoin

Acquisition chez uber Copier ou acheter ses concurrents est encore le modèle économique de la tech

Subreddits

Subreddit


1.

r/Kotlin est une communauté basée sur le langage Kotlin afin de développer des applications Android, Javascript ou JVM

Post

Un article afin de débuter sur Kotlin, cela s'approche d'un hello World, mais utile pour les développeurs venant de Java


2.

r/ReactJS est une communauté de développeurs React

Post

Un article afin de bien débuter à déployer une applications avec MongoDB, express.js, react, node.js sur Heroku


3

r/androiddev est une communauté de développeurs Android

Post

Un article qui te réconciliera peut être avec la programmation asynchrone sur Android

Reddit Logo Kotlin Coroutines Fundamentals


4

r/web_design est une communauté dédiée au web design

Post

une nouvelle propriété CSS, bien plus claire, en attendant qu'elle soit supportée par la plupart des browsers, à part internet explorer qui n'est plus supporté par Internet


5

r/webdev est une communauté portant sur le développement web. Elle est un peut trop généraliste

Post

Mais on peut y trouver les réponses à nos questions en fouillant un peu

Reddit Logo A list of subreddits related to webdev

https://reddit.com/r/webdev <-- you are here

https://reddit.com/r/indiewebdev - web development

https://reddit.com/r/webdevbuddies - find web development buddies

https://reddit.com/r/web_design - web design

https://reddit.com/r/frontend - web frontend

https://reddit.com/r/backend - web backend

https://reddit.com/r/Web_Development - Web development news

&#x200B;

Learn

https://reddit.com/r/learnprogramming - general programming

https://www.reddit.com/r/accessibility - web accessibility

https://reddit.com/r/learnjavascript - javascript frontend and backend

https://reddit.com/r/learnpython - python backend development

https://reddit.com/r/learnjava - java backend development

https://reddit.com/r/FreeCodeCamp -…


Hacker News

Creating my awesome Windows 10 dev setup

Commentaire

Je partage pas mal les même problèmes surtout dans l'usage du disque qui semble se remplir sans aucunes bonnes raisons... Windows terminal est une technologie pas mal récente, mais ils commencent enfin à avoir un terminal digne de ce nom.

NES-Style CSS Framework

Commentaire

Merci, les liens sont vraiment bons pour quelqu'un qui aime le retrodesign. Les licences sont MIT, mais qu'en est-il des icones qui ont été utilisées ?

Stack Overflow

IntelliJ renders markdown files without any plugin. You just need to create a .md file and the IDE will render your code as you go on a side by side window

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

AWS GenAI LIVE image

Real challenges. Real solutions. Real talk.

From technical discussions to philosophical debates, AWS and AWS Partners examine the impact and evolution of gen AI.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay