LINUX.ORG.RU

Python vs C#

 ,


0

6

Подскажите, что на ваш взгляд проще для изучения новичку Python или C#? А может вообще С++ (Чтобы раз ввязался, то на перспективу)? Цель, можно так сказать в параллель: реализация методик в программе и для тестирования программ. Читал, что именно для тестирования подходит Phyton, но если его применять для программ, то с окнами целый геморрой, замучаешься их описывать. Но при этом вроде как и С# используют.


для изучения новичку Python или C#?

Если ты не знаешь вообще ничего, то и это тебе вообще ничего не объяснит. А то что усвоишь будешь считать «магией».

Читал

Почитай Столярова, в разы понятнее все объясняет.

Ygor ★★★★★
()

Зачем? Для чего мне кресты, я знаю,и зачем я начинал изучать C#, я знаю. А ты?

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

В третьей версии напихали «бантиков и рюшечек».

Аннотация типов ИМНО ненужное, но это прямое следствие того то питон пытаются тянуть в большие проекты, где ему от рождения не место. Из хорошего :=. Но в целом да, соглашусь - py3 хуже py2, и это даже если не говорить про слом обратной совместимости. За одну полностью ленивую функциональщину надо карать безжалостно… ;-(

Что осталось? Есть примеры?

Это чисто субъективные ощущения от давишнего вынужденного однократного просмотра шарпового кода. Конкретику забыл а осадочек остался, как с украденной серебряной ложечкой;-)

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

А я начинал курить этот ваш шарп в связи с реверсом дров для МФУ. Но не сложилось — покинул работу раньше.

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

Но есть одна проблема. За знание названий языков денег не дают. И даже за знакомство с их (языков) синтаксисом

no-dashi-v2 ★★★
()

До того, как я занялся этой вашей наукой, я совершенно искренне не понимал, зачем нужны кресты.

Так что всё от задачи.

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

С другой стороны, после плюсов, боли и унижения — всё остальное уже не страшно.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 1)
Ответ на: комментарий от AntonI

Хоть бы cppfront взлетел. Удивительно, конечно, сколько лет прошло в проблемы всё те же. Даже фортран смог в более-менее приличный синтаксис, а комитет всё более мозгодробильные конструкции хардкодит.

thunar ★★★★★
()

проще для изучения новичку Python или C#

Проще вообще ничего не учить.

no-such-file ★★★★★
()
Ответ на: комментарий от AntonI

Я пытался тыкать в шарп палочкой ровно один раз - коллегам надо было прикрутить наш плюсовый модуль к своему кадавру и я взял для этого SWIG. Мне активно не понравилось, больше всего поразило выделение отдельного файла под каждый чих в жёстко иерархичной структуре каталогов.

???

Отдельный файл под класс и пакеты соответствующие директориям - это Java. У шарпа ты можешь хоть весь проект запихнуть в один файл или держать модули под любыми namespace, вне зависимости от физического расположения. Но естественно, так никто не делает ни на каком языке.

FFI с сишным кодом у дот нета вообще один из лучших на «рынке». При условии наличия extern C ручек с плюсовой стороны в базовом случае достаточно набора static partial методов, помеченных атрибутом

Про синтаксис вообще страннейший тейк

Midael ★★★★★
()
Последнее исправление: Midael (всего исправлений: 1)
Ответ на: комментарий от Midael

Отдельный файл под класс и пакеты соответствующие директориям - это Java.

Никто не мешает валить все классы в один файл, все методы в один класс. Вроде как в последних версиях можно вообще как в сишке фигачить отдельные методы вне класса. А уж валить все в одну директорию можно при любых раскладах.

Ygor ★★★★★
()

Читал, что именно для тестирования подходит Phyton

Какое тестирование интересует?

реализация методик в программе

Какие программы?

Rodegast ★★★★★
()

Учи баш, братан, здоровее будешь

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

Пока точно нет.

Ну вот... C# тебе точно не нужен.

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

Никто не мешает валить все классы в один файл, все методы в один класс.

все методы в один класс.

(╯°□°)╯︵ DILOS

Eulenspiegel
()

@RazorBG в общем и целом, могу предложить вариант без лишней болтовни. Находишь и качаешь книгу А.В. Столяров - «Программирование: введение в профессию. Том 1: азы программирования».

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

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

Но там, где есть большие нагрузки, с питона переходят на всякие голанги

Вот потому я и сказал «с некоторой натяжкой»

В основном его используют для бэкэнда, в нише примерно эквивалетной Java, и уже давно всё нативно работает на Linux

Там доля в разы меньше чем у жабы/пистона/жс

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

Как можно сравнивать плюсы и шарп? Совершенно разные языки. Но если сравнивать по производительности, то да, оба гораздо быстрее питона.

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

Прочитаю. Но с ЯП вроде как определился. Но у меня нет цели стать программистом в полный рост.ЯП хочу для автоматизации тестирования. Я стар для программирования(

RazorBG
() автор топика
Последнее исправление: RazorBG (всего исправлений: 1)
Ответ на: комментарий от amm

И чего у шарпа нет для тестирования относительно джавы и питона?

Ну например найти работу втоматизатором ещё сложнее чем питонщиком. А если он использует экзотику типа C#, то это вообще анрил.

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

В любом случае, там много полезной инфы и намёков, как действовать, о чём думать и т.д. Поможет.

th3m3 ★★★★★
()

пытон это внесистемная скриптуха, а шарп - полновесное программирование гуя и энтерпрайза, прибитое гвоздями к виндовс.

если хочется ооп, то это шарп. если хочется по-быстрому и багов половить - это пытон.

alysnix ★★★
()

для изучения новичка обучить питону

ибо у питона из коробки есть repl -

т.е нет нужды в отдельном пошаговом отладчике(который прочем тоже есть) как у компилируемых языков

т.е ты по факту можешь собирать очередной модуль(в питоне по сути каждый файл(кода) это модуль)(с последующем убором шераховатостей) из частей интеракции

в обучении это эффективно приводит к стратегии снизу вверх - чем в своё время прославился тот же С(в unix изводе - см. Unix - среда программирования Кернигана(ага) Пайка(golang plan9 blt)))

далее у питона из коробки досточно много хороших и лаконичных сырцов по которым по мере освоения (т.е import this а потом перейди на реализацию ) можно быстро ускорится в освоении

так что ставь Mu и вперде ( потом vscode)

https://codewith.mu/

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

Спасибо! Но мне нужен будет питон на перспективу для автоматизации тестирования. Программистом я вряд ли стану, возраст не тот. Но пока очень интересно!

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

см Свейгард Автоматизация рутинных задач

«программирование-вторая грамотность»(Ершов)

ликбез очередной оказался не нужен по другим причинам

сейчас как раз таки очередное Джобсковское(компьютер амплификатор(ака умножитель) интеллекта)

не тот возраст это у трупа

qulinxao3 ★☆
()

что на ваш взгляд проще для изучения новичку

Жопаскрипт. Никакие классы-шмассы, паттерны-шматтерны учить не нужно, никакие виртуалэнвы-дотнетфреймворки ставить тоже не нужно. Браузер запустиль, консолька аткриль и погромировай.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 2)
Ответ на: комментарий от RazorBG

Программистом я вряд ли стану, возраст не тот.

У мамы коллега (учитель фортепиано) уехала в 90е в США, устроилась по специальности и тут хабах - кризис, работы нет. Тете было за 50, тем не менее она быстренько выучилась на программиста, поработала несколько лет программистом а потом вернулась в преподавание фортепиано.

Возраст тут не очень причем, скорее важен соответствующий взгляд на мир и умение видеть причинно-следственные связи. Да и смена деятельности от возрастной деменции очень помогает;-)

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

Согласен, насчёт пользы для мозга. Но на сколько я знаю предпочтение отдают молодым (20-25 летним). Но мне пока не к спеху, если зайдет эта тема и заинтересую работодателя, то с удовольствием пойду в эту сферу. А пока нужно углубиться и все структурировать в голове!

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

В части программирования нужен опыт. Вот есть ли площадки, где можно практиковаться или есть возможность стажировки в обычных компаниях? С минимальной оплатой труда или бесплатно, чтобы руку набить, ну и возможно это зачтётся за стаж.

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

Не знаю, я ж не программист;-)

Но могу точно сказать - не менее чем навыки программирования важно знание предметной области. «Чистые» программисты (ничего кроме программирования не умеющие) наверное интересны большим компаниям, но люди разбирающиеся в том где они кодят (бухгалтерия/физика/автоматизация цеха и тд и тп) и умеющие при этом сносно кодить ценятся всегда и везде.

Так что попытайтесь пристегнуть программирование к тем навыкам которые у Вас уже есть.

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

проблема бесплатного интершипа - предпочтение к выходцам из слоёв мало нуждающихся в подёнщине

в программирование как и в любой скилловой деятельности нужно ботать

ботать

и ботать - при этом ещё и отличать что фундаментально и стоит внимания к изучению а что очередной хайп и «успешный успех»

дело ведь не в математике, как и не в латыни, как и в не лингвистике

заботывать до достаточного(хм)

опыт это «10к часов» - решая реально свои(!) задачи по возможности использовать навыки в том числе и программирования для делегирования исполнителю(кремниевому) рутины - сначала просто какой то последовательсти всегда детерменированной и просто по завершению перейте к след и так далее

крч

проблема опыта не в работнике - а в херках и обман0бизнесе привыкшем везде срезать «ненужные» расходы :)

qulinxao3 ★☆
()

Подскажите, что на ваш взгляд проще для изучения новичку Python или C#? А может вообще С++ (Чтобы раз ввязался, то на перспективу)?

на мой взгляд, от более простого к более сложному: python -> C# -> C++. Причём, в C++ так много специфики по управлению памятью, всяким UB, так что C++ значительно сложнее C#. И дело вообще не в перспективе. Ни один из этих ЯП не умрёт в ближайшие годы, а с другой стороны, туда, где питон вытяснил плюсы, C++ обратно в большинстве случаев не прийдёт.

реализация методик в программе и для тестирования программ

«кто на ком стоял?»(С)

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 1)
Ответ на: комментарий от RazorBG

Но мне нужен будет питон на перспективу для автоматизации тестирования.

Смотря что именно. Но тот же Jenkins реализован на Java, так что если нужно будет расширение для него написать, то Java. А сам план тестирования можно хоть на bash автоматизировать. Питон тут просто как продвинутый скриптовый ЯП.

seiken ★★★★★
()

Python

Можно стать макакой и остаться навсегда.

C#

Можно, но, как и с Java, есть шанс заполучить ООП головного мозга, после чего другие концепции туда принципиально не влезут. Но если пойти в корпоративное рабство, то этого и не нужно.

С++

Будете путать знание где в плюсах какие грабли разложены с умением программировать вообще.

Вывод: берите scheme. Простая, универсальная, не требует каких-то особых знаний, чтобы начать писать и не засоряет голову особенностями платформы/реализации.

ugoday ★★★★★
()

Огласи свой наличествующий бэкграунд в погромировании, ну там лабы писал на Паскале или что-нибудь такое? Потому что кругозор у новичка, как я посмотрю, широкий, но вот по силам ли такой размах?

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

Вывод: берите scheme. Простая, универсальная, не требует каких-то особых знаний, чтобы начать писать и не засоряет голову особенностями платформы/реализации.

А еще она, в отличие от остального перечисленного, не нужна ему ни сейчас, ни в последствии с большой вероятностью не пригодится :)

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

Ничего я не писал. В школе на информатике выполнял задания на Basic, потом на VB. После окончания института пытался изучить C#, но так как не было конкретной цели для чего, то забросил. Сейчас появилось свободное время и вот хочу освоить QA-тестировщик. Поэтому и озадачился изучением ЯП.

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

Вы рассуждаете, как программист на С++, который существенную часть жизни потратил на изучение потрохов С++ (и как с ними бороться) и необходимость выучить ещё один язык внушает ему ужас. R5RS (а новее и не надо), можно прочитать по пути на работу. По сравнению с огромностью задачи «научиться программировать» временем, потребным, чтобы выучить синтаксис схемы можно вообще пренебречь.

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

что-то новенькое этот scheme

Scheme: Scheme [skiːm] — функциональный язык программирования, один из трёх наиболее популярных диалектов Лиспа (наряду с Common Lisp и Clojure). Создан в середине 1970-х годов исследователями Массачусетского технологического института Гаем Стилом (англ. Guy L. Steele) и Джеральдом Сассменом (англ. Gerald Jay Sussman).

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

Угу. Тогда, думаю, от C++ ты надорвешься. Начни учить C# и Python параллельно. В сравнении поймешь, что тебе нравится больше. А еще изучи вакансии в твоем городе по выбранному направлению. Каких больше, то и перспективнее для изучения. Потому что невостребованные навыки, даже самые блестящие, продать сложно.

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

схема хороша - особено для уже готовых инженеров с желательно phd-уровнем ибо синтаксис за первую пару - остальное время чистые концепции и их приложение к личной практике

сьезд на питон произошёл частично имено по тому что меньше(чем в целом) нужно архитекторов(т/е в целом лиц видящих систему в полноте и могущих таковые системы реализовывать изходя из общих принципов) - а спрос на сборку из готовых батареек мега батарей ( с опцией погружения годной py_батарейки в фортран|c++|ada|...) тем больше чем компы(особенно многоядерные али вообще gpu тензор али новомодно «нейроные» процы) всё больше idle

qulinxao3 ★☆
()
Ответ на: комментарий от ugoday

Нет, я рассуждаю как человек, который не знает, куда берут джунов со знанием Scheme. Правда, я не очень много знаю вообще в этом плане, но действительно какие задачи может решать такой человек, зная Схему, вернее, какому работодателю нужен будет код на Схеме?

Или уж сразу раскройте ТС страшную тайну, что Схема нужна, чтобы он научился программировать, а на покушать ему придется учить еще один ЯП, уже мэйнстримный.

Virtuos86 ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.