Witam i witam ponownie.
W tym wykładzie chcę omówić niektóre specyficzne funkcje związane
z językiem programowania c.
Znamy więc wszystkie zalety C.
Mówiłem o tego rodzaju do mdłości.
Wiemy, że c daje zwarte i wydajne programy. To jest jednak cecha
języka, to ważne.
To jeden z najważniejszych języków programowania i tak
będzie nadal. Wiemy to wszystko.
Więc jeszcze raz chcę to powtórzyć.
Ale główne cechy c to to,
że są wydajne, przenośne, potężne i elastyczny i zorientowany na programistę.
I zamierzamy to omówić bardziej szczegółowo, co to oznacza.
Ale te są ważne cechy c.
Musimy je ponownie zrozumieć, aby zrozumieć, jak pisać
kod w tym języku.
Więc co oznacza wydajność i przenośność oznacza?
Cóż, c jest wydajnym językiem.
Wykorzystuje wszystkie możliwości obecnych komputerów.
Jest bardzo kompaktowy programy i napisane w c.
Są bardzo szybkie i kompaktowe.
Mówiłem wcześniej o tym, jak mapowanie c instrukcji do instrukcji w jakimś języku
jest bardzo skuteczna.
To jest jeden z powody, dla których jest tak szybki.
Jeden z zarzutów java w przeszłości była, hej, java
jest naprawdę powolna.
Cóż, nie masz tego problemu z c.
Kiedy piszesz program w C, działa szybko, jest bardzo kompaktowy.
Więc to jest funkcja języka.
To jest efektywność.
Programiści mogą dostroić swoje programy, aby były
jeszcze bardziej wydajne, ponieważ to jest taki niski poziom.
Mogą używać więcej efektywne wykorzystanie pamięci.
W Javie nie można robić takich rzeczy.
Java ma własny moduł odśmiecania pamięci i nie możesz manipulować pamięcią,
aby była bardziej wydajna.
Więc c jest wydajnym językiem i jest to przenośny język.
Więc krótko o tym poruszyłem w poprzednim wykładzie, ale to jest ważne, bo co
to oznacza, że jeśli napiszesz program w języku c w
jednym systemie operacyjnym, to ty można go uruchomić w innym systemie operacyjnym
bez modyfikowania go.
Jeden z problemów podczas pisania kod w dzisiejszym świecie czasami nie
zadziała, chyba że piszesz w wielu językach lub
intensywnie je modyfikujesz.
Na przykład, jeśli piszesz aplikacja na Androida na telefon z Androidem, tak nie jest
zamierzam pracować na telefonie z systemem iOS.
Ty ich nie masz rodzaje problemów z c.
Piszesz c i będzie działać dalej różnego rodzaju sprzęt,
różne systemy operacyjne.
W rzeczywistości c jest liderem w programie przenośność, ta możliwość i
kompilatory są łatwo dostępne.
Możesz pobrać kompilator Windows, Linux, nie ma problemu.
Zazwyczaj pojawiają się systemy Linux / Unix z kompilatorem c, więc nie musisz go nawet pobierać,
gdy jesteś włączony Linux / Unix to samo z Macintoshem.
Możesz więc zacząć pisać programy w C. natychmiast, żadnych zewnętrznych plików do pobrania.
Są również dostępne oczywiście dla systemu Windows.
Ale zazwyczaj w przypadku systemu Windows ty będzie musiał pobrać kompilator.
I będziemy to robić, kiedy pobieramy nasze wymagane oprogramowanie.
Więc jest duża szansa, że otrzymujesz kompilator c dla dowolnego
urządzenia, którego używasz.
Możesz również pobrać kompilator c dla urządzenia z
systemem Android lub iOS, naprawdę niski poziom mikro lub mini komputery, a także procesory
i samochody.
Jest również bardzo elastyczny, co jest ważne, a także bardzo potężne.
Więc jądra Unix Linux są napisane w c.
Co to jest jądro?
Cóż, znamy systemy Unix i Linux to system operacyjny.
Znamy system operacyjny pomoże Ci wydajniej - użytkownikowi
wydajniej - użyj pliku komputer i kontroluje wiele aspektów
interakcji ze sprzętem i tak dalej.
Jądrem jest mózg systemu operacyjnego.
Więc tak jak procesor jest mózgiem komputer, jądro jest
miejscem, w którym tak naprawdę cały mózg i wiedza system operacyjny, więc
zazwyczaj zawiera interfejsy sprzętowe a jądro, które zarządza pamięcią, robi
wiele różnych rzeczy.
I to wszystko jest napisane w C.
Więc to może ci powiedzieć potężny aspekt języka.
Jeśli jądro pliku operacyjnego system jest napisany w tym języku,
ten język jest potężny.
Tak wielu kompilatorów i tłumaczy dla innych języków są
zbudowane na c lub zostały napisane w c.
Więc jeśli to ci nie mówi potężna natura języka,
nie wiem, co będzie.
Ale Fortran, Perl, Python, dowolne kompilatory napisane w tego typu językach
są napisane w c.
Więc programy c zostały użyte do rozwiązywanie problemów fizyki
i inżynierii, a nawet animacja efekty specjalne do filmów, szeroko stosowane do
wielu różnych rzeczy.
Ważna jest również elastyczność, zwłaszcza gdy jesteś programistą i
piszesz ten kod.
Chcesz móc to zrobić rzeczy na różne sposoby.
Chcesz być w stanie rozwiązać problem na wiele sposobów.
Zwykle większa elastyczność, tym lepiej.
Jest jednak pewien kompromis między elastycznością a wydajnością.
Więc czasami jest - to chwytliwe kiedy projektujesz język, ale c tak
zostało zaprojektowane elastyczny i jest bardzo elastyczny.
Możesz więc po prostu zrobić wszystko, co chcesz w programie c.
Możesz napisać wszystko inaczej typy aplikacji.
Możesz także zarządzać pamięcią i rób różne rzeczy, do których ogranicza Cię
wiele innych języków.
Jest kompromis, ponieważ czasami elastyczność powoduje więcej błędów
lub powoduje, że programiści nie pełne zrozumienie pewnych pojęć, ponieważ mogą być
bardziej złożone.
Ale ostatecznie elastyczność to dobrze, zwłaszcza
jeśli jesteś programistą, który rozumie język bardzo dobrze.
To także podstawa do czegoś więcej zaawansowane języki, takie
jak c ++, wspomniały o tym wcześniej.
Służy do tworzenia telefonów komórkowych aplikacje w postaci obiektywnego c.
Cel-c jest prawnie zastrzeżony język firmy Apple.
Zasadniczo jest to c z obiektami podobnie jak c ++, ale zdecydowali się
napisać własny język.
Ale jest mniej używany w iOS i mniej, ponieważ Swift jest bardziej popularny,
ale jest też łatwy uczyć się ze względu na jego zwartość.
To idealny pierwszy język dowiedz się, czy chcesz zostać programistą.
I myślę, że dałem uzasadnienie tego całkiem niezłe.
Zdobędziesz wystarczająca wiedza do
praktycznego tworzenia aplikacji bardzo szybko i bardzo łatwo.
Dlatego właśnie jest to dobry pierwszy do nauki.
I to właśnie zamierzasz Zauważ, że w tej klasie
jest to, wow teraz, kiedy nauczyłem się c wow, jest to znacznie łatwiejsze aby
nauczyć się javy, dużo łatwiej jest nauczyć się php, dużo łatwiej jest się nauczyć te
inne języki, ponieważ mają wszystko, co te języki mieć i bardzo łatwo się tego nauczyć.
Jest zorientowany na programistę.
To jest funkcja językowa.
Spełnia potrzeby programistów.
Powiedziałem ci, jak Dennis Ritchie kiedy tworzył język,
chciał uczynić go bardziej deweloperskim skupiony i zrobił to.
Osiągnął ten cel.
Zapewnia bezpośredni dostęp do sprzęt, umożliwia bezpośredni dostęp do pamięci
i zarządzanie własną pamięcią.
A więc przychodzi elastyczność do gry, gdy jest
zorientowany na programistę.
W Javie nie możesz zrobić wielu z tych rzeczy takie rzeczy jak zarządzanie własną pamięcią.
C ma również wiele innych możliwości które pozwalają na elastyczność.
Myślę, że pozwala na to elastyczność być bardziej zorientowanym na programistę, ponieważ programiści
to lubią.
Lubią tę elastyczność, oni nie chcę, żeby ci mówiono, co robić.
Zawiera duży wybór operatorów, które pozwalają
zwięźle wyrazić siebie.
To oznacza, że nie wiemy czym jest jeszcze operator.
Ale operator może być rzeczami jak dodawanie i
odejmowanie operatorów matematycznych lub przypisanie operatorzy przypisujący dane do pamięci.
A im więcej operatorów pozwoliły ci wyrazić siebie bardziej
w swoim kodzie.
A więc funkcja języka z bardziej zorientowani na programistę to ta lista
operatorów, którą będziemy omówić bardziej szczegółowo.
Jest mniej rygorystyczny niż większość języków ograniczanie tego, co możesz zrobić, w
pewnym sensie już o tym rozmawialiśmy.
Wspomniałem o kompromisie z to elastyczność kontra surowość.
To zaleta, że możesz robić rzeczy na wiele różnych sposobów.
Jednak może to być niebezpieczne ponieważ jest bardziej
podatny na błędy programistów, zwłaszcza z czymś w rodzaju wskaźników.
Więc fakt, że możesz zarządzać swoim własna pamięć w c jest bardzo elastyczna, ale
czasami jest też bardzo skomplikowana.
W rezultacie wielu programistów wprowadzać błędy do programów.
Teraz java nie pozwala zarządzasz swoją pamięcią.
Ale jest też mniej elastyczny ale także zmniejsza liczbę błędów
w programie.
Więc jest kompromis.
Zasadniczo chcesz mieć elastyczność, pozwalając również na mniej
skomplikowane rzeczy.
C daje więcej swobody, ale nakłada również większą odpowiedzialność na programistę,
i to jest dlaczego jest zorientowany na program.
Implementacje C mają duży biblioteka przydatnych funkcji c.
Więc nie musisz pisać wszystkiego w c, jeśli chcesz coś zrobić.
Języki programowania zazwyczaj zawierają inne funkcje programu, które są dostarczane
z językiem.
Na przykład, jeśli chcesz czytać dane wejściowe od użytkownika, nie chcesz w
tym celu pisać kodu c niskiego poziomu.
W tym będą kody już robi to za Ciebie, a Ty po
prostu ponownie wykorzystujesz ten kod.
I to jest zwykle zamknięte w czymś, co nazywa się biblioteką.
A więc c ma różne rodzaje bibliotek
funkcje odczytu danych z klawiatury, zapisu danych do plików, do tworzenia różnego rodzaju fajnych rzeczy z różnymi procesami
i zagrożeniami.
Mam na myśli różne miłe rzeczy.
Więc fakt, że dużo implementacja jest dostarczana z językiem i
nie musisz tego robić faktycznie zaimplementuj to sam, po prostu musisz
nauczyć się używać Biblioteki są bardzo korzystne i bardzo
zorientowane na programistę.
Niektóre inne cechy c to zapewnia funkcje niskiego poziomu, które są
zwykle udostępniane przez niższy poziom języków, rozmawialiśmy o tym.
Ale znowu, najlepszym przykładem jest pamięć zarządzanie, bezpośredni dostęp do pamięci.
Programy mogą być manipulowane za pomocą bitów.
Cóż, jeśli to nie jest niski poziom Nie wiem co to jest. To umiejętność zarządzania
pamięcią reprezentacja na poziomie bitowym.
Bity i bajty są tym, jak my faktycznie przechowują dane na komputerach,
zapewnia szeroką gamę plików operatory manipulacji bitami.
Znowu coś w języku o którym będziemy mówić bardziej szczegółowo.
Wskaźniki odgrywają dużą rolę w C.
To jest koncepcja, którą możesz o czym słyszałeś, być
może nie słyszałeś, ale tak jest związane z zarządzaniem pamięcią.
Będziemy mieć wiele wykłady na temat wskaźników. Ale to jest bardzo, bardzo
ważna cecha c, z którym powinieneś się zapoznać na
bardzo wysokim poziomie.
C zarządzanie pamięcią, c wskaźniki. Często, gdy myślisz o
języku programowania c, najpierw myślisz o wskazówkach.
A wszystko to jest bezpośrednie dostęp do pamięci.
Wady c, rozmawialiśmy o tym kompromisie między elastycznością, elastycznością
a wolnością.
Wymaga również dodatkowej odpowiedzialności.
Niektórzy uważają to za wadę, niektórzy uważają, że wskaźniki są nadużywane.
W rezultacie wielu ludzie piszą złe programy w C.
Cóż, tak, jeśli komuś dasz narzędzie, że coś robisz,
robią to niepoprawnie, kto jest winny?
Znowu tego chcesz ograniczyć to narzędzie, ponieważ jest
nadużywane lub czy chcesz na to zezwolić to narzędzie, które zapewnia elastyczność.
Więc często możesz być bardziej elastyczny, ale istnieje ryzyko popełnienia większej liczby błędów i często
takie błędy są bardzo trudne do znalezienia i prześledzenia, zwłaszcza jeśli są
to rzeczy związane z pamięcią.
Więc to może być problem.
Inne rzeczy ze względu na jego bogactwo operatorów i jego
zwięzłość utrudnia język czasami czytać i naśladować.
W większości przypadków c jest bardzo czytelne.
Ale jeśli używasz ich dużo różnych operatorów, co może uczynić
sprawę bardziej złożoną.
Jest więc okazja do napisania niejasny kod, ale w
każdym języku można źle napisać.
Możesz więc używać angielskiego język, kiedy mówisz i możesz
mieć złą gramatykę.
Nie inaczej jest, gdy piszesz - używać języka programowania.
Ale niektórzy mówią, że c to wada z powodu tych wszystkich operatorów.
Jeśli używasz go nieprawidłowo, to może być trudniej śledzić kod.
Podsumowując.
To ładna ilustracja Znów znalazłem w
sieci, którą chciałbym Ci udostępnić.
Podstawowe cechy języka c: szybkie i wydajne, przenośne, wiele fajnych bibliotek, w których jesteś Potrafi
ponownie wykorzystać kod i nie musisz robić rzeczy
samodzielnie, modularności, o
której rozmawialiśmy wcześniej, ale to jest idea organizowania kodu
wokół funkcji, łatwych do
rozszerzenia, a potem wszystkiego te potężne operatory, które pozwalają ci robić
różne rzeczy.
A więc wiele fajnych funkcji.
I większość funkcji, które o których właśnie rozmawialiśmy, są w
wielu współczesnych językach, ponieważ są zbudowane z c.