Dlaczego warto programować w C?

  • Harry James
  • 0
  • 2048
  • 113
Reklama

W 2016 r. C był 9. najbardziej aktywnym językiem na GitHub z 202 tys. Żądań ściągnięcia w ciągu roku. Porównaj to z trzema najlepszymi językami: JavaScript z żądaniami ściągania 1 604 tys., Java z żądaniami ściągania 763 tys. I Python z żądaniami ściągania 744. Ruby, PHP, C ++ i CSS również pokonały C.

Na pierwszy rzut oka może się wydawać, że C został pozostawiony w prochu przez nowsze, świeższe, bardziej ekscytujące języki - C jest W końcu 45 lat - ale GitHub nie jest najdokładniejszym obrazem Co to jest Git i dlaczego powinieneś używać kontroli wersji, jeśli jesteś programistą Co to jest Git i dlaczego powinieneś używać kontroli wersji, jeśli jesteś programistą jako twórcy stron internetowych, często pracujemy nad lokalnymi witrynami programistycznymi, a potem po prostu przesyłamy wszystko, gdy skończymy. To dobrze, gdy jesteś tylko ty, a zmiany są niewielkie… w branży oprogramowania. GitHub ma olbrzymi stronniczość w kierunku open source i trendy.

C nie jest martwym językiem. w rzeczywistości, Spektrum IEEE Magazyn uznał go za najlepszy język nr 2 w 2017 roku, wyprzedzając Java, C # i JavaScript. Jeśli miałbyś nauczyć się C w tym roku, to by to zrobił nie marnuj swój czas lub energię. Oto pięć powodów:.

1. Głębsze zrozumienie komputerów

Być może słyszałeś, że C to “język niższego poziomu.” W kontekście programowania “poziom” jest opisem tego, jak blisko jesteś natywnego zestawu instrukcji komputera. Im niższy poziom, tym bliżej pisania kodu maszynowego. Im wyższy poziom, tym więcej abstrakcji robi język, aby oderwać się od pisania kodu maszynowego.

C jest językiem niższego poziomu z pewną abstrakcją. Możesz pisać kod, który jest dość blisko sprzętu i bezpośrednio manipulować pamięcią, podczas gdy w języku wyższego poziomu, takim jak Java, sam język obsługuje pamięć za pośrednictwem śmietnika.

Zdjęcie kredytowe: Casimiro PT przez Shutterstock

Chociaż jest to część tego, co sprawia, że ​​C jest trudny do nauczenia, to również dlatego programiści C zwykle lepiej dostosowują się do działania komputerów. Aby napisać dobry kod C, musisz myśleć tak, jak myśli komputer: zarządzanie pamięcią, strumienie wejścia / wyjścia, kolejność bajtów itp..

Istnieją języki niższego poziomu niż C (np. Asembler), ale C jest tak niski, jak chcesz. Zachowuje większość mocy i kontroli języków niższego poziomu, ale jest wystarczająco abstrakcyjny, aby kod czytelny dla ludzi nie spowodował oderwania oczu.

2. Łatwiejsze pobieranie innych języków

Niektórzy programiści lubią to mówić “kiedy znasz jeden język programowania, znasz je wszystkie.” Chociaż jest to zachęcający sentyment, nie jest to do końca prawda - chyba że nauczysz się C..

Chodzi o to, że przejście z jednego języka do drugiego jest płynniejsze, gdy poruszasz się w abstrakcji. Przejście z języka niższego poziomu, takiego jak C, na język wyższego poziomu, taki jak Python, jest raczej łatwe, ponieważ Python bardziej trzyma rękę. Ale przechodząc z Pythona do C? Nie takie łatwe.

Zdjęcie kredytowe: Sashkin przez Shutterstock

Lub rozważ inny przykład. C # jest obecnie popularnym pierwszym językiem dla początkujących, szczególnie dla tych, którzy chcą zająć się tworzeniem gier (ponieważ ukochany silnik Unity używa C # 5 bezpłatnych narzędzi do tworzenia gier do tworzenia własnych gier 5 bezpłatnych narzędzi do tworzenia gier do tworzenia własnych gier Bezpłatne oprogramowanie do tworzenia gier to świetny sposób na rozpoczęcie tworzenia gier wideo. Zebraliśmy najlepsze oprogramowanie do gier na rynku). Ale mimo że język C # jest wysoce abstrakcyjny i łatwiejszy w użyciu, początkujący często mylą się, ponieważ nie rozumieją co jest abstrakcyjne.

Ucząc się języka C, zasadniczo uczysz się podstaw współczesnego programowania. Jeśli naprawdę rozumiesz C, będziesz w stanie wybrać inny język, ponieważ prawie każdy współczesny język ma wyższy poziom niż C.

3. Lepsze uznanie innych języków

Niski poziom C ma swoją cenę: złożoność i nudę.

Pomyśl o tym jak o zrobieniu kanapki z szynką. W języku wyższego poziomu możesz użyć makeSandwich (“szynka”), która pozwala uzyskać gotową kanapkę. W C musiałbyś napisać własną funkcję makeSandwich (), która zbiera i przygotowuje wszystkie niezbędne składniki, składa kanapkę, a następnie odkłada wszystko z powrotem.

Źródło zdjęcia: Zakharchuk przez Shutterstock

Z jednej strony, kontrola każdego aspektu twojej kanapki jest świetna. Możesz nawet napisać szybszą metodę makeSandwich (), która pomija pewne kroki, na których ci nie zależy. Ale czasami chcesz, żeby ktoś zrobił ci kanapkę, a jedzenie dla ciebie często smakuje lepiej niż jedzenie, które sam przygotowałeś.

Większość współczesnych języków narodziła się w odpowiedzi na niedociągnięcia w innym języku: C ++ w odpowiedzi na C, Java w odpowiedzi na C ++, C # w odpowiedzi na Javę itp.. Ucząc się języka C, możesz lepiej zrozumieć, dlaczego niektóre języki są zaprojektowane w taki sposób, w jaki są, i lepiej docenić wygodę oferowaną przez języki wyższego poziomu.

4. Niekonwencjonalne projekty i zastosowania

Większość współczesnych języków programowania jest wykorzystywana do tych samych trzech rzeczy: aplikacji biznesowych, aplikacji internetowych i mobilnych oraz analizy danych.

Języki wyższego poziomu są dla nich świetne, ponieważ nie ma potrzeby zagłębiania się w drobiazgowe szczegóły architektury komputerowej. Zamiast tego szybkie cykle rozwoju i solidny król trzymający się za ręce - dwie z głównych zalet używania języka wyższego poziomu.

Zdjęcie kredytowe: Inspirowanie poprzez Shutterstock

Ale jeśli chcesz opracować oprogramowanie, które bezpośrednio łączy się ze sprzętem, potrzebujesz języka niższego poziomu - a C jest najczęściej używanym. Do godnych uwagi aplikacji należą systemy operacyjne, języki programowania i kompilatory, systemy osadzone, silniki gier itp.

Na przykład jądro Linuksa jest napisane w C i asemblerze. Popularne języki, takie jak Python, PHP, Perl i Ruby są zaimplementowane w C. Czy wiesz, że nawet C jest napisane w C? A ponieważ wiele systemów wbudowanych ma ścisłe limity zasobów, język C jest często wybranym językiem, ponieważ ma bardzo mały narzut.

5. Popraw swoje możliwości pracy

Istnieją dwa sposoby zagwarantowania pracy w branży oprogramowania:

  1. Specjalizujemy się w pozycjach o wysokim popycie.
  2. Specjalizujemy się w pozycjach o niskiej podaży.

Miejsca o wysokim popycie 10 Zadania związane z programowaniem komputerowym, które są teraz na żądanie 10 Zadania związane z programowaniem komputerowym, które są obecnie na żądanie Ponieważ wylądowanie zadania programistycznego może być trudne w obecnym krajobrazie, rozważ skupienie się na jednej z poniższych koncentracji, aby zwiększyć swoje szanse na powodzenie. obejmują modne języki, których można używać w wielu dziedzinach: JavaScript, Python i Java to najlepsze przykłady. Pozycje o niskiej podaży zwykle obejmują archaiczne języki, starsze systemy i niezbyt krzykliwe projekty. C jest popularny, ale programiści C kurczą się.

Ponieważ większość kodowania obozów dla początkujących Coding Boot Camp dla początkujących: czy powinieneś wziąć jeden? Coding Boot Camp dla początkujących: czy warto go wziąć? Kompleksowe obozy kodowania zapewniają wejście w przestrzeń kodowania. Dowiedz się, czym one są, czego się nauczysz i czy są odpowiednie dla twojej podróży programistycznej! a kursy szkoleniowe online popychają początkujących programistów w kierunku języków o wysokim popycie, możesz wyróżnić się, ucząc się języka C.. Może to otworzyć wiele ofert pracy, które po prostu nie są dostępne w językach wyższego poziomu.

Rozpoczęcie pracy z C.

C nie jest łatwy do nauczenia się, szczególnie jeśli jest to twój pierwszy język programowania. Dlatego zalecamy zapoznanie się z tymi trzema artykułami przed zanurzeniem się: pytania, które należy sobie zadać przed nauką programowania, jak nauczyć się programowania bez stresu oraz sztuczki do opanowania nowego języka programowania 7 Przydatne sztuczki do opanowania nowego języka programowania 7 Przydatne sztuczki do Opanowanie nowego języka programowania W porządku, gdy uczysz się kodować, możesz być przytłoczony. Prawdopodobnie zapomnisz o rzeczach tak szybko, jak się ich nauczysz. Te wskazówki pomogą ci lepiej zachować wszystkie nowe informacje. .

Ale jeśli poważnie myślisz o nauce języka C, na pewno zacznij od Język programowania C, wydanie drugie (często określany jako “K&R”). Zasadniczo jest to Biblia programowania C. Jest dość stary, ale wszystko w nim nadal ma zastosowanie do C. Po zakończeniu możesz przeczytać o zmianach, które nastąpiły w wersjach językowych C89, C99 i C11.

Jeśli nie możesz sobie pozwolić na tę książkę, zacznij od Księga C.. Nie jest już w wersji drukowanej, ale nadal jest dostępny online w formie HTML w całości.

Co myślisz? Czy C jest przestarzały i bezużyteczny, czy też nowi programiści powinni się go jeszcze nauczyć, zanim odkryją bardziej nowoczesne języki? Podziel się z nami swoimi przemyśleniami poniżej!




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.