Présentation
Tags: fr
Published: 2021-01-30 18:54:20

   
## Table des matières

* [Présentation](#java)       
* [Liens utiles](#lien)
* [Sub Reddits](#sub)
* [Hacker News](#hack)
* [StackOverFlow](#stack)

     


{% spotify spotify:episode:5inyWbgUj8SzuzLKCOytVO%}

##Kotlin vs JAVA <a name="java"></a>
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

```kotlin
try {
    // Mon Programme
}
catch (e: Exception) {
    // Oups
}
```

####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 :

```kotlin
val number: Int? = null
```
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 :

```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;
}
}
```

Et en Kotlin:


```kotlin

data class Book(var title: String, var author: Author)
```

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.

```javascript
console.log("10"+1) // retourne 101
console.log("10"-1) // retourne 9
```

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

{% nexttech https://nt.dev/s/d7af85b963bf %}


[Documentation](https://kotlinlang.org/docs/reference/operator-overloading.html)


##Liens utiles <a name="lien"></a>

###Hashnode
[voir le site](https://hashnode.com/)

###SlashDot
[voir le site](https://slashdot.org/recent)
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](https://developers.slashdot.org/story/21/01/30/2128205/are-we-overestimating-the-number-of-cobol-transactions-each-day) _Il représente encore 95% des transactions en face à face_


[42](https://tech.slashdot.org/story/20/04/20/0135249/programmers-real-time-deepfake-lets-him-impersonate-elon-musk-on-zoom) _Les deepfakes accessibles sur zoom?_

###Techcunch
[voir le site](https://techcrunch.com/)
TechCrunch est un média en ligne portant sur les technologies et les start-ups. Il appartient à AOL/Verizon 👿

[le bitcoin banni en Inde?](https://techcrunch.com/2021/01/30/india-plans-to-introduce-law-to-ban-bitcoin-other-private-cryptocurrencies/) _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](https://techcrunch.com/2021/01/29/ubers-autocab-acquisition-gets-eyed-by-uk-competition-watchdog/) _Copier ou acheter ses concurrents est encore le modèle économique de la tech_




##Subreddits <a name="sub"></a>
![Subreddit](https://media.giphy.com/media/goiauJeRxagM/source.gif)

---

#####1.
[r/Kotlin](https://www.reddit.com/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_

{% reddit https://www.reddit.com/r/Kotlin/comments/l6edl3/learn_kotlin_in_12_minutes_would_love_any/ %}

---
#####2.
[r/ReactJS](https://www.reddit.com/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_

{% reddit https://www.reddit.com/r/reactjs/comments/l9b4ti/deploying_mern_stack_application_guide_heroku_and/ %}

---   

#####3
[r/androiddev](https://www.reddit.com/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 https://www.reddit.com/r/androiddev/comments/l8pu94/kotlin_coroutines_fundamentals/ %}

---   

#####4
[r/web_design](https://www.reddit.com/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_

{% reddit https://www.reddit.com/r/web_design/comments/l97jwe/the_new_css_aspectratio_property/ %}

---  
 
#####5
[r/webdev](https://www.reddit.com/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 https://www.reddit.com/r/webdev/comments/l84l04/a_list_of_subreddits_related_to_webdev/ %}



---       

##Hacker News <a name="hack"></a>
[Creating my awesome Windows 10 dev setup](https://news.ycombinator.com/item?id=25965897)
######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](https://news.ycombinator.com/item?id=25983323)
######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 <a name="stack"></a>

{% stackoverflow 65995603%}