Pourquoi Java était la langue cible que je déteste

introduction

Les chats écrivent C # comme leur langage préféré et Java comme leur langage détesté sur leur profil. En dehors de cela, je n'ai pas vraiment d'attachement à Microsoft. Avant de toucher C #, il souffrait de la douleur des pointeurs du langage C, détestait Java où il s'était échappé pour les raisons suivantes et était impressionné par Delphi, donc il aimait ce langage. C'est peut-être l'une des raisons. Il y a beaucoup de programmeurs expérimentés dans cette Qiita, donc je pense qu'il y en a qui m'accompagneront et d'autres qui me détesteront, alors je vais écrire la raison pour laquelle je ne l'aime pas.

J'ai du mal avec le fonctionnement de base du tableau d'octets

Il s'agit d'une chaîne de données dans laquelle un certain nombre de données de 1 octet (8 bits) sont organisées dans un tableau d'octets. Les octets traitent généralement les nombres de 0 à 255. Sans surprise, la plupart des langages, y compris le C, peuvent facilement gérer des tableaux d'octets ... (la plupart des langages expérimentés le peuvent).

unsigned char color[3];

Ou

byte[] color = new byte[3];

Ou

$color = [ 255, 255, 255 ]; // (Hmm? Je ressens quelque chose de différent)

Ou le style d'écriture peut changer. Cependant, vous pouvez créer un tableau qui gère correctement 0-255.

Cependant, dans le langage que je détestais, comme le langage C #

byte[] color = { 126, 127, 235 };

Mais je n'obtiens pas les résultats attendus en Java. Java ne peut pas définir de types non signés (communément appelés non signés). J'ai entendu dire que je devais utiliser une classe ou un short ou un int, donc j'ai beaucoup de problèmes avec la conversion et je ne veux pas l'utiliser! J'ai pensé. Cependant, Java récent est probablement possible! Il peut y avoir une réaction. Je n'y ai pas touché depuis plus de 10 ans, alors qu'en est-il?

C'est donc l'une des raisons pour lesquelles je détestais ça. (Toujours là ...)

Hiérarchie + classe = fichier

Fondamentalement, une seule classe peut être définie dans un fichier. Je pense que la chose semblable à une sous-classe pourrait être intégrée, mais la base en était une. Si vous créez une classe, le nombre de fichiers augmentera. Que vous souhaitiez créer une classe qui n'est qu'une interface qui ne fait rien, ou une classe prototype ... Production de fichiers en série. Et c'était pénible car la hiérarchie affectait aussi (* il y a 10 ans). Je me demande si c'est toujours le cas ...

L'installation et l'IDE sont pénibles

À cette époque, j'utilisais Eclipse pour le développement. Il n'est peut-être plus courant, mais il tue également Windows et meurt à chaque fois qu'il se compile. Le harcèlement vous dit simplement de le faire sur la console. Avant cela, j'avais l'impression d'être mort au moment où j'ai mis le JDK ...

À cette époque, Microsoft .NET Framework 1.0 est sorti et je le touchais en même temps, mais en conséquence, je suis arrivé à la conclusion que VS est le plus puissant, et après tout, j'ai commencé à jouer avec C # WindowsForm sans utiliser Java, tel quel Développement d'applications Windows de Delphi Si vous appréciez le langage lui-même tout en titubant dans un style trop simple, PHP, langage D, etc., vous n'utiliserez pas Java pendant plusieurs années.

Java sur Android

J'utilisais Java au travail il y a quelques années. Oui, j'ai de nouveau été ennuyé par le tableau d'octets, et comme je n'avais pas encore Android Studio, je pleurais à Eclipse et j'ai fini par le détester ...

Résumé

Un langage Java qui a été acquis par Oracle, payé et influencé. Et au C #, qui évolue en intégrant les bons points de différents langages ... Java, qui est devenu une spécification de langage floue essayant de rattraper son retard. Si vous êtes invité à effectuer un développement natif sur Android, appuyez sur Kotlin ou Xamarin (C #). Java était déjà plein, c'est pourquoi je le détestais.

Recommended Posts

Pourquoi Java était la langue cible que je déteste
[Java] J'ai essayé d'implémenter la combinaison.
J'ai étudié le constructeur (java)
J'ai essayé le framework Java "Quarkus"
Java9 était inclus, j'ai donc essayé jshell.
J'ai essayé le nouveau yuan à Java
[jour: 5] J'ai résumé les bases de Java
J'étais accro à la méthode du rouleau
[Java] J'ai personnellement résumé la grammaire de base.
J'étais accro au test Spring-Batch
Je suis allé au Java Women's Club # 1
Pourquoi le code était-il pénible à lire?
J'ai comparé les caractéristiques de Java et .NET
Essayez Progate Free Edition [Java I]
La partie à laquelle j'étais accro dans "Introduction à Ajax dans les applications Web Java" de NetBeans
J'étais accro à NoSuchMethodError dans Cloud Endpoints
[Java] Je souhaite calculer la différence par rapport à la date
J'étais accro au record du modèle associé
Je n'ai pas pu l'exécuter après la mise à niveau de la version Java
[Ruby] Incompréhension que j'utilisais le module [Débutant]
J'ai résumé les types et les bases des exceptions Java
J'ai essayé d'implémenter la méthode de division mutuelle d'Eugrid en Java
Le mystérieux java.exe était la cause de l'incapacité de faire correspondre les versions javac et java encore et encore.