LINUX.ORG.RU

Разработка под Linux. Как лучше вести её?

 ,


0

1

В общем решила написать на С# программку маленькую кроссплатформенную, для повышения навыка. Хочу писать на .NET Core и авалонии. Хотела делать так - под виндовс писать, а потом на Linux запускать. Но услышала что лучше разрабатывать сразу в среде Linux. Что лучше - писать под Windows и на Linux запускать или писать сразу под Linux и на Windows запускать???



Последнее исправление: Golden_Fleece (всего исправлений: 3)

Что лучше - писать под Windows и на Linux запускать или писать сразу под Linux и на Windows запускать???

Что лучше

Пойти погулять )) И не забивать голову такими вопросами.

как лучше вести разработку

Зависит от задачки, от навыков и личных предпочтений и немного от здравого смысла. Какие тут могут быть советы?

vvn_black ★★★★★
()

В блокноте, конечно.

Ну, смотри у тебя есть как минимум две IDE: VSCode (кроссплатформа) и сама знаешь что. Потом, ты же с базами хотела поработать - Postgresql, MySQL лучше под Линукс. Постгресс вообще сказал, что мелкософт виндовс не их аудитория и поддерживать сие поделие они не хотят. За MSSQL не знаю, под Линукс, не скажу.

В другом плане, отладка, тесты и профилирование в том самом «сама знаешь что» IDE исторически лучше, VSCode по сравнению с ним просто редактор с плагинами (но там есть все необходимое для net core, когда понимаешь что делашь).

Вывод: блокнот (vim) и консоль (linux) - для развития, остальное от стека зависит.

P.S. В Винде есть wsl. Я лично давно сижу только на линукс. Но у меня сейчас нет задач связанных с net core, когда были VSCode хватало.

lnx4
()
Ответ на: комментарий от lnx4

Благодарю за такой развернутый ответ, он мне очень помог!) Буду под Windows писать, а потом в Linux запускать)

но там есть все необходимое для net core, >>когда понимаешь что делашь

Думаю чуть позже, когда наберусь опыта попробую разрабатывать сразу под Linux с помощью VS Code) Это будет интересный опыт)

Golden_Fleece
() автор топика
Ответ на: комментарий от Golden_Fleece

Буду под Windows писать

Я вообще на другой путь направить хотел, ну ладно :D

Если серьёзно - пиши где удобней, переход с виндовс на линукс он тоже не самый простой, постепенно разберёшься. Для разработки, как система, Линукс, естественно, лучше. А для веб-серверов - намбер ван.

Пиши код, потом с остальным разберешься. Ну, и WSL (встроенная виртуалка с линукс в винду) для вас виндузятников придумали. Можно не отрываясь тестить в ней.

lnx4
()
Ответ на: комментарий от lnx4

Тот путь на который ты хотел меня направить - классный.

Но у меня опыта пока мало для этого пути. Страшновато как-то) Хочу сначала так попробовать, а то я кроссплатформу еще не писала - только под винду на WPF. Поэтому сначала буду писать на том что привычно, а потом когда потыкаю так сказать написание кроссплатформы попробую под Linux)

Golden_Fleece
() автор топика
Ответ на: комментарий от Golden_Fleece

Страшновато как-то

Через страшно, постепенно. Всё будет ок. Для разработчиков Линукс самое то.

Ахахаха) Постраюсь!) Да и надо научиться общаться, а то в коллективе на мелкие, добрые подколки молчу - не знаю что ответить)

Будь уверена - плохому тебя здесь точно научат. Даже не переживай на этот счет. Но не надо, оставайся собой.

lnx4
()

Но услышала что лучше разрабатывать сразу в среде Linux.

Я об этом в книге А.В. Столярова «Программирование/Введение в профессию/Азы программирования» прочитал.

Mischutka ★★★★★
()
Последнее исправление: Mischutka (всего исправлений: 1)

Если оставть религиозную сторону вопроса, то пофиг я поначалу использовал Windows по причине «0-lvl Linux skills». Я хотел кроссплатформенность ради кроссплатформенности, для этого-то и поставил Linux.

Спустя какое-то такой время разработки с попутным изучением Linux (а мне правда стало интересно), я пришёл к тому, что сейчас более-менее освоился в системе, поэтому сразу пишу на целевой платформу, сиречь – Linux.

PhysShell ★★
()
Ответ на: комментарий от lnx4

Постгресс вообще сказал, что мелкософт виндовс не их аудитория и поддерживать сие поделие они не хотят

Это сказал не Posgres, а PostgressPro - русская платная дорогая сборка. Оригинальный postgresql винду выпиливать не собирался.

her_s_gory
()
Ответ на: комментарий от fsb4000

Я пользуюсь Windows и WSL 2 Ubuntu 22.04

У вас Docker уже не на ядре в виртуалке крутится?

Нет в Linux никаких преимуществ перед Windows для разработчика, это всё вкусовщина…

Как так? Всегда было что новые языки первые пару лет под Windows не попробовать. Так было с Go, Swift, сейчас наверное с Carbon Language.
Ну и подсветку под что-то новое в нормальных IDE ждать долго, а в VIM уже кто-то наверняка запилил на regex.

Вот и получается что для кодера Linux идеальная рабочая среда.

Aber ★★★★★
()
Ответ на: комментарий от Golden_Fleece

Эм… я пользовался только Visual Studio 6, в те времена это был текстовый редактор с подсветкой и дебагером.

Потом пользовался NetBeans, Eclipse, Idea, дефицита нормальных IDE не испытывал.
Но я понимаю что C# и .NET это windows специфичная платформа, там даже нормальных кросплатформенных UI тулкитов нет, потому Microsoft не сможет не то что Visual Stdio понтировать куда либо за пределы Win32, да даже Paint.NET.

Aber ★★★★★
()
Последнее исправление: Aber (всего исправлений: 2)

Сразу по твоему кейсу: Без разницы. .NET Core и Avalonia UI работают отлично на linux и на windows. Пиши там где привычнее, там где знакомый инструментарий. Иначе будешь бороться с инструментами вместо решения задач. Но тестировать лучше именно в виртуальных машинах! А потом и на реальном железе с той или иной ОС.

Я тоже сталкивался с такой проблемой. Хоть я и бекендер, но для своих нужд приходилось пилить кросплатформенные GUI. Я делал вообще не так, я сразу брал Qt5 и прикручивал их к python (почему к нему, да тупо потому что я его знаю лучше всего).

Еще я экспериментировал с flutter. С си шарпа на него будет перейти очень просто, синтаксис Dart очень похож на C#. Если нет, то для qt5 есть привязки к C#. Все технологии которые я описал кросплатформенные. Чем порадовал flutter, так это тем что у него кроскомпиляция из коробки. Т.е можно и под андроид и под десктоп и под веб все собрать на одной ОС и не парится.

Есть еще electron но тут его почему-то хейтят. Хотя в целом нормальная история, можно юзать для не особо крупных проектов.

По поводу баз данных на десктопе это конечно же sqlite, а для серверов хорошо зайдет postgress. Если сервер еще и обернуть в docker, то хоть на Windows, хоть на Linux, хоть на чайнике с тостером запустится одинаково.

Unixson
()
Ответ на: комментарий от fsb4000

Нет в Linux никаких преимуществ перед Windows для разработчика, это всё вкусовщина…

А как насчет того что твой код написанный под виндой может тупо не запустится на сервере с linux? Конечно можно в wsl поставить докер и все будет работать, но это как на linux пилить под винду с установленным visual studio в вайне. Если ты пилишь код на винде ты пилишь его под винду и точка. Исключение конечно андроид с его андроид студия, но в гугле не дураки работают, поэтому они позаботились чтобы у всех собиралось и работало одинаково. Плюс ты пилишь код под конкретную платформу андроид. Ты же еще учитывай что разработка бывает разной. В том числе программы пилятся и для linux-only рынка. Поэтому это не вкусовщина, а выбор инструментария. Исключение из правил кросплатформный код, вот тут реально вкусовщина. Но и то, даже тот же самый python под виндой и под linux ведут себя чуточку иначе и это надо учитывать

Unixson
()