Рубрики
Без рубрики

Разработчик c#, начинающий курс Java

Первый опыт разработчика c# с Java. Помеченный java, оо.

Я начал модуль с Открытым университетом, где я должен изучать концепции OO посредством изучения и использования Java. В качестве личной документации, а также интереса для всех, я решил, что буду документировать свое путешествие.

Прежде чем мы начнем, я в течение последних 4 лет или около того специально использовал c # в своей профессии, сначала в качестве автоматизированного тестировщика, а затем в качестве инженера-программиста, поэтому я знаком с принципами и концепциями OO. Хотя я признаю, что моей теории не хватает, потому что я не учился в университете и не изучал никаких курсов CS, предшествующих тому, на котором я сейчас. Я использовал другие языки, но Java – это не тот язык, к которому я действительно прикасался, но он так похож на c #, что я слышал, как об этом много раз говорили так что я был осведомлен, по крайней мере, о некоторых различиях, с которыми я столкнусь при изучении этого языка.

Ниже приведены мои первые открытия, когда я приступил к этому курсу.

Мне нужна моя ИДЕЯ

Инструмент, используемый университетом, синего цвета. И хотя я вижу привлекательность для тех, кто изучает OO и Java, я веду настоящую битву с Visual Studio и VS Code. Где мой Интеллект! Это похоже на шаг назад и опыт, который не имеет отношения к реальному миру.

Собирать коллекции намного сложнее!

Хорошо, я признаю, что, возможно, Linq испортил меня, но работа с коллекциями кажется излишне сложной. Похоже, что для простого создания нового списка и повторения этого требуется много кода. Может быть, это только я, и я надеюсь, что через несколько недель я буду смеяться над этим и разглагольствовать в комментариях о том, как это просто на самом деле.

Где моя точка входа

Я столкнулся с этим, когда хотел создать консольное приложение hello world. После быстрого поиска выясняется, что это всего лишь метод

public static void main() { 
...
} 

и это может быть в любом классе. Я думаю, это может быть как плюсом, так и минусом.

Всегда Тип

Я большой пользователь var в c# и практически любого ключевого слова, которое является общим и заставляет компилятор определять тип. Но в Java вы должны каждый раз устанавливать тип. Не имеет большого значения и в некоторых случаях может быть полезно убедиться, что переменная определенно того типа, который вы ожидаете

String name  = "John Doe";

Заглавная строка и логическое значение int в нижнем регистре?

Из того, что я, кажется, могу собрать, типы имеют разную оболочку друг для друга. В c# это в значительной степени все строчные буквы c#

string Name;
int Age; 
boolean IsVerified;

но на Яве они

String name;
int age; 
Boolean isVerified

Больше вызывающих проблем

К этому я привык, так как работал с JS и TS, а также просто знал об этом в любом случае, но имена методов и переменные экземпляра (в c #, известные как свойства) начинаются со строчной буквы

private String name;

public void setName(String name){
 this.name = name;
}
...

Явные Геттеры и сеттеры

Я был потрясен, когда мне сказали, что нужно создавать и предоставлять методы получения и установки для каждой переменной экземпляра, которую я хотел предоставить и которой я хотел манипулировать. Я очень предпочитаю способ c# справиться с этим

c#

public string Name { get; set; } 

Ява

private String name;

public String getName(){
   return name;
}

public void setName(String name){
   this.name = name
}

подводить итоги

Может показаться, что я жалуюсь на Java, и, возможно, я кажусь фанатом c# но на самом деле, чего вы ожидаете, таков мой мир, и так было уже несколько лет так что это потребует некоторой корректировки. Я надеюсь продолжать документировать свои знания, углубляясь в мир Java, в конце концов, есть причина, по которой он все еще так популярен!

Оригинал: “https://dev.to/alexs1305/a-c-dev-starting-a-java-course-2k1b”