Ciao e bentornato.
Parliamo di fondamenti di un programma.
Poiché questo è un inizio classe di programmazione, in
particolare di cui parleremo C, prima che tu possa capire anche un
linguaggio di programmazione, hai bisogno di per capire cos'è un programma.
Quindi voglio descrivere alcune informazioni di base, concetti di base prima di iniziare
con i dettagli di C.
I computer sono macchine molto stupide.
Ragazzi, ne sono sicuro, più di più che non familiarità con ciò
che un computer può fare e cosa fa.
In particolare, però, sotto il cofano e cosa succede in termini di
quando fai clic sul browser, quando fai clic le diverse applicazioni che usi, cosa
sta succedendo sotto il cofano c'è qualche tipo di
programma in esecuzione e quel programma lo è dire al computer cosa fare.
I computer sono davvero stupidi.
Fanno solo quello che gli viene detto.
Quindi le operazioni di base di un file computer formerà ciò che è noto come
il set di istruzioni del computer.
Un set di istruzioni se puoi pensaci, è il modo in
cui farà qualcosa. Quindi dobbiamo
dirlo a questo computer come andrà a finire.
Lo facciamo sotto forma di un file programma a un livello ancora più basso.
Ogni computer ha ciò che è chiamato set di istruzioni.
Un set di istruzioni è fondamentalmente le istruzioni sulla CPU,
il processore del computer.
Quindi per risolvere un problema usando un computer dicendoti cosa fare,
fornisci questa soluzione inviandoli istruzioni al set di istruzioni.
Quindi questo è quello che sta
succedendo quando scrivi un programma per computer e stai inviando istruzioni specifiche per risolvere
un problema specifico tramite comandi alla CPU, al processore.
E l'approccio o il metodo che viene utilizzato per risolvere il problema è
noto come algoritmo.
Quindi per voi ragazzi che capite matematica, un algoritmo è il modo in cui risolvi
un problema.
Quindi, ad esempio, se lo dovessi creare un intero programma e tutto
ciò che fa è verificare se un file l'utente inserisce un numero pari o dispari.
Quello che sarebbe descritto come il file l'algoritmo stesso è il test, indipendentemente dal fatto che
il numero sia pari o meno o strano, questo è l'algoritmo.
Le affermazioni che risolvono il problema nella sua interezza diventa il programma.
E ne discuteremo concetto e algoritmo.
Gli algoritmi sono pari è pari più tipo di relazione - relativo alla programmazione
del modulo.
Quindi ne parleremo quando lo faremo parlare di più sui dettagli per vedere.
Ma ancora una volta, voglio lasciarti capire cosa stai facendo quando
scrivi codice.
Cosa sta succedendo al livello molto, molto più basso.
Scriverai questi algoritmi che
sono contenuti all'interno di un programma.
Quindi, per scrivere un programma, sei sarà
necessario scrivere correttamente le istruzioni in implementare l'algoritmo.
Queste istruzioni possono essere espresse in qualsiasi tipo di dichiarazione di
un particolare linguaggio di programmazione.
Quindi ci concentreremo su c per questo corso, ma sono sicuro
che hai sentito parlare di altri programmi linguaggi come java,
c ++, object c utilizzati nelle applicazioni iOS ma in realtà più ora, viene utilizzato Swift.
Ma c'è tutta questa programmazione lingue che
puoi imparare che essenzialmente ti permetteranno invia istruzioni alla CPU sotto
forma di algoritmi e istruzioni.
Inoltre, voglio parlare di alcuni terminologia di base, CPU, unità
di elaborazione centrale.
Questo è il cervello del computer.
Questo è dove la maggior parte dei file il lavoro è in corso.
Qui è dove le istruzioni vengono eseguite.
Ricordo, tu spesso ascolta questo termine memoria.
E gli studenti spesso ottengono memoria molto confuso con il disco rigido.
La memoria non è la stessa come il disco rigido.
La memoria viene spesso definita ram, che è la memoria ad accesso casuale.
Tutti i dati archiviati in memoria
sono un componente hardware separato.
Non è un vero disco rigido.
Tutti i dati nel programma è archiviato in memoria, il
componente hardware separato.
Quindi memorizza i dati in programma mentre è in esecuzione.
E ne parleremo variabili e cosa significano.
Ma un programma necessita di dati per eseguire
calcoli per eseguire algoritmi.
Quei dati saranno immagazzinato in ram, memoria.
Il motivo per cui lo archiviamo in memoria al contrario di memorizzarlo su
un disco rigido è quella memoria è molto più veloce, consente al programma
di funzionare molto più velocemente.
Ma di solito lo è anche la memoria non persistente durante i riavvii un
altro tipo di chiarimento.
Ma dovresti capire solo questo termine RAM.
Significa memoria.
Sono le variabili e i dati in il programma stesso dove è memorizzato.
L'hardware separato componente quindi il disco rigido.
L'unità hardware è qualcosa compri quando il computer è una
memoria permanente.
Di solito è molto, molto grande. It contiene gigabyte, terabyte di dati.
Questo memorizza i file che possono essere risorse di un programma.
E quando accendi il computer spegnerlo e riaccenderlo, quei file
sono ancora lì.
Quando accendi il computer spento e acceso per un programma, il programma
interrompe effettivamente l'esecuzione e non c'è niente in ram.
Quindi comprendi la differenza tra ram e disco rigido.
È un concetto importante.
Ancora una volta, pensa a ram come correlato da programmare, poiché il disco
rigido è correlato
all'archiviazione permanente e di solito mettiamo le risorse lì.
Avremo tutti i file del sistema operativo tipi di risorse di programma differenti.
Un sistema operativo è sviluppato per fondamentalmente rendi la tua vita molto più facile quando vuoi
usare il computer.
Perché a un livello molto basso, a il computer sta solo
facendo quello che gli viene detto e sono solo istruzioni utilizzando un set di istruzioni.
Sarebbe molto difficile da usare se dovessi comprendere
tutte queste istruzioni.
Quindi c'è un programma chiamato un file sistema operativo che semplifica l'utilizzo
di un computer da parte di un utente.
Controlla tutte le operazioni del computer, gestisce tutto l'input e
l'output via hardware così sa come interagire con
una tastiera, un mouse, un monitor.
Gestisce anche i computer risorse, gestisce l'esecuzione di
diverse applicazioni.
Un sistema operativo è un file classe completamente separata.
C'è molto da fare un sistema operativo, ma
comprenderne le basi.
Ti sta solo permettendo di usare il tuo computer in modo più semplice.
Alcuni esempi di very i sistemi operativi comuni sono cose
come Windows, giusto.
Tutti usano Windows.
Windows 10, Windows
XP, qualunque sia il caso.
Linux, UNIX che faremo parliamo di più quando parliamo
della storia di C.
Android è un sistema operativo per dispositivi mobili, iOS.
Questi sono programmi specifici che sono molto grandi e possono contenere
molti programmi diversi che interagiscono, semplificarti la vita interagendo
con il computer.
Il ciclo di esecuzione del recupero.
Questa è la CPU del ciclo di vita.
Lo dico solo perché, ancora una volta, stiamo solo
descrivendo la terminologia di base.
Ecco come inviare le istruzioni a un computer, la CPU, quello che sta
realmente accadendo sei tu recuperare le istruzioni dalla memoria
perché questo è il programma.
E poi lo farai eseguilo sulla CPU, ed è questo tipo di loop
che sei farlo ancora e ancora e ancora.
Lo stai ripetendo.
E se hai mai sentito parlare di termine gigahertz, una CPU gigahertz può fare
circa un miliardo di volte al secondo, un miliardo di istruzioni al secondo.
Quindi puoi immaginare cosa succede quando utilizzi
un computer con questo recuperare il ciclo di vita dell'esecuzione.
Ed ecco una piccola illustrazione che ho preso da un'immagine su
internet che ti mostra questi effetti ciclo di esecuzione un po 'più chiaro.
Cosa sta succedendo quando stai
interagendo con la CPU e queste istruzioni.
Quello che sta succedendo è stai afferrando da ariete.
E ram, ricorda, contiene i dati dei programmi.
Stai acquisendo dati lì per le istruzioni.
E decifri costantemente il file dati che vengono memorizzati nei registri e nella
ram e quindi vengono eseguiti diverse parti della CPU, l'unità di
controllo o l'ALU.
Questo è un loop però.
Si ripete e basta e ancora e ancora.
E ancora oggi per le CPU miliardi di volte al secondo.
Quindi, quando parliamo di programmi c e scrivendo programmi in c, a un livello
molto basso, sotto tutto, siamo semplicemente interagendo con la CPU tramite il nostro linguaggio di
programmazione di livello superiore.
Quindi un livello superiore linguaggio di programmazione.
Linguaggi di programmazione di livello superiore semplificare la scrittura di programmi.
Ora, se dovessimo doverlo fare ancora una volta, capire
tutte queste istruzioni sulla CPU, sarebbe essere molto difficile da scrivere.
E per capire tutto istruzioni, che di solito significa che è
un linguaggio assembly.
Se hai mai sentito il termine assemblaggio linguaggio, significa solo che stai
scrivendo un programma a un livello molto basso dove è un livello così basso da
comprendere il set di istruzioni.
E puoi immaginarlo se tu dovessi scrivere tutti i
tuoi programmi con tutte queste istruzioni, it sarebbe molto inefficiente
e molto difficile scrivere un programma.
Quindi programmazione di livello superiore il linguaggio è l'opposto
di un linguaggio assembly.
È un livello molto più alto.
Un esempio è c.
C è un livello superiore linguaggio di programmazione.
Descrive le azioni che il programma si esibirà in un
modo molto più astratto.
Non devi memorizzare le istruzioni sulla CPU.
Capisci solo la lingua stesso e risolvi i problemi attraverso
questi algoritmi.
Sembra molto di più la lingua inglese.
È molto più facile da capire.
Se dovessi guardare un file linguaggio
assembly, quello che vedrai sono i comandi di spostamento con registri, con
numeri, fondamentalmente solo istruzioni numeriche.
E utilizzando un livello superiore linguaggio come c, non devi preoccuparti di
niente di tutto questo.
Non devi preoccuparti sul set di istruzioni.
Non devi preoccuparti dichiarazioni in linguaggio assembly.
Quindi è molto più efficiente ed è molto più facile
realizzare e risolvere i problemi.
E quindi studieremo c come nostro linguaggi di programmazione
di livello superiore, ma altri esempi potrebbero essere java, obiettivo c, cose che ho menzionato.
Si tratta di programmazione di alto livello lingue che ti rendono la vita molto
più facile e molto più efficiente.
Oltre a questi di livello superiore linguaggi di programmazione, se hai questo linguaggio
che è più astratto, devi essere in grado di prendere
quella lingua e quindi eseguirla su una CPU.
Devi convertirlo essenzialmente in istruzioni che la CPU comprende.
E quindi è qui che a entra in gioco il compilatore.
Spesso quando scrivi codice in formato programmazione, utilizzerai un
compilatore che traduce questo linguaggio di alto livello, codice
sorgente in dettaglio istruzioni in linguaggio macchina,
fondamentalmente, linguaggio assembly.
Quindi scriverai un file programma che farà
un pensiero più astratto e di alto livello.
E poi il compilatore sta andando per generare tutti
i milioni di istruzioni che vanno al CPU sul set di istruzioni.
Quindi useremo un compilatore in questa classe per fare esattamente questo.
Scriveremo il codice sorgente in una forma astratta di livello molto più alto.
E poi eseguiremo un file programma chiamato
il compilatore per convertire quel codice in qualcosa che la CPU capisce.
Ora ecco l'altra cosa sui compilatori stanno anche andando a verificare se il
tuo programma ha o meno una sintassi valida.
Quindi, quando scrivi il codice, tu devi devi seguire
le regole della lingua.
Le regole della lingua sono essenzialmente la sintassi, indipendentemente dal fatto che tu
abbia o meno un punto e virgola in la fine di un'affermazione, indipendentemente dal fatto
che si utilizzino o meno determinate parole chiave.
Se fai queste cose in modo errato, non sarai in
grado di eseguire il tuo programma.
Quindi il compilatore troverà tutti questi errori, e te lo
dirà e riferirà a tu e dì, ehi, non
hai scritto correttamente il tuo
codice, devi risolverli prima di convertire effettivamente questa roba in le istruzioni impostate sulla CPU.
Quindi diventeremo familiari con i compilatori
in senso generale, come usarli, come capire, cosa ci stanno dicendo.
Le lingue di alto livello sono molte più facile da imparare, molto più facile
da programmare rispetto ai linguaggi macchina.
Questo è il succo di questa diapositiva in questo momento è che utilizzando un linguaggio
come c, sarà molto più efficiente e più facile.
Quando scriviamo un programma, lo siamo eseguirà effettivamente più
passaggi multipli.
E ho trovato questa illustrazione che descrive davvero i
passaggi in un modo davvero carino.
Quindi l'ho preso da un libro.
È una serie di passaggi di base quando scrivi qualsiasi tipo di programma.
Dalla prima fase di definizione del file obiettivi del programma,
comprensione dei requisiti, al mantenimento e modificando il programma.
Quindi esaminiamoli passi molto veloci e scoprirai
che stai facendo - andando per farlo in questa classe.
Quando inizi a scrivere un file programma,
seguirai tutti questi passaggi.
Il primo passo sarà quello di definire gli obiettivi del programma.
Questo è dove stai andando comprendere i requisiti.
Non puoi iniziare a scrivere codice a meno che capisci cosa devi fare.
Quindi devi essere chiaro idea di cosa vuoi
ottenere in questo passaggio.
Dopo aver compreso il file requisiti, inizierai quindi
a progettare il codice.
Quando progetti il codice, questo è il modo in cui il codice
soddisferà i requisiti.
Qual è l'interfaccia utente in corso per assomigliare se è richiesto.
Come organizzerai il tuo file programma,
creerai diverse funzioni e proverai a creare algoritmi diversi e così via.
Allora lo farai iniziare a implementare il codice.
Qui è dove scrivi effettivamente il file codice e inseriscilo in un editor
in un ambiente di sviluppo integrato.
Traduci il design in sintassi del linguaggio di programmazione, in questo
caso c, capire le regole del linguaggio c.
Quindi puoi usare qualsiasi editor di testo.
Lo useremo effettivamente qualcosa chiamato blocchi freddi.
In genere vorrai usare qualcosa più di un editor di testo,
qualcosa chiamato IDE di cui parleremo.
Una volta che hai finito di scrivere il codice,
devi compilarlo perché ha bisogno di convertirlo nel sorgente codice alla lingua di basso livello.
Ne abbiamo già parlato, quindi questo è un passaggio piuttosto semplice.
E poi esegui il programma. Eseguire il programma lo
sta eseguendo, lo sta usando.
E poi va essere il quinto passo.
Dopo aver eseguito il programma, sei non fatto perché anche se
hai scritto il codice e forse soddisfa il requisiti della lingua, potrebbe non fare ciò che
è inteso fare, quindi devi
testarlo e lo hai fatto per trovare e correggere i tuoi errori.
Quindi solo perché un programma è in esecuzione, non significa che funzioni.
Invito molti studenti a dì, ehi, compilato, ho finito. No.
Devi assicurarti che quando lo esegui, soddisfa
i requisiti e fa cosa pensi che andrà bene.
Quindi devi costantemente testare.
E eseguirai i passaggi uno attraverso sei ancora e ancora
e ancora. Lo sarai scoprendo
che stai per scrivere codice, testare, scrivere codice test, scrittura di codice, test.
E in genere, quando lo fai, tu voglio farlo in pezzi molto piccoli.
Vuoi scrivere due righe di codice, test. Altre due righe di codice,
test e così via.
Quindi è necessario testare ed eseguire il debug.
Il debug è un altro concetto.
Avremo molte lezioni su debug, ma è qui che trovi e correggi
i tuoi errori di programmazione.
Ci sono alcune tecniche per te può fare, alcuni strumenti che puoi utilizzare per aiutarti
a trovare questi errori.
E imparerai un sacco provando e il debug perché puoi sempre
imparare una grande quantità di informazioni commettendo errori.
E sarà normale.
Stai per compilare e il file il programma non
farà quello che fai tu quello che hai detto che ha fatto e imparerai da quello.
Ed è quello che siamo andando a fare in questa classe.
Non te lo mostrerò solo il modo corretto di fare le cose.
Ti mostrerò il torto modo di fare le cose, e poi
vedrai perché questo è sbagliato.
L'ultimo passaggio è la manutenzione.
Questo è quando i programmi sono rilasciato e poi utilizzato
da molte persone, ma potrebbe ancora avere bug.
Quindi, ad esempio, quando Windows 10 è rilasciato, noterai che ha ancora bug
o si blocca ancora.
E così sei costantemente ottenere aggiornamenti.
E quando ricevi questi aggiornamenti, si chiama mantenimento del programma.
Quindi solo perché hai finito scrivendo il codice
e rilasciandolo al pubblico, non lo fa significa che hai finito di mantenerlo.
La manutenzione è spesso il fase più ampia, fase più ampia perché quando
tu rilascia un programma che potrebbe essere disponibile per
cinque o dieci anni.
Dovrai aggiustarli bug in modo che i tuoi clienti siano felici.
Potresti anche voler aggiungere nuove funzionalità per mantenerlo aggiornato sul mercato.
Quindi la manutenzione è davvero importante pure.
La manutenzione avviene dopo di te rilasciare il prodotto al cliente.
Quindi per tutti questi passaggi puoi saltare, eseguire i passaggi in
ordine diverso, a seconda di cosa metodologia di programmazione, anche questa
è tutta un'altra lezione.
Non lo farai sempre necessariamente esegui questi passaggi in un approccio a cascata in
cui inizi dall'inizio e terminare al - fine all'ultimo passaggio.
Potresti progettare e poi tornare indietro e fare i test e poi
tornare indietro e riprogettazione e così via.
Quindi stai per saltare tutto a seconda di
ciò che è più pratico.
Dalla mia esperienza, molte nuove i programmatori in molte
delle classi in udemy stanno ignorando i passaggi uno e due e andando direttamente
alla scrittura del codice.
Ti stanno mostrando come scrivere il codice, ma non ti
mostrano perché stai scrivendo il codice.
Quindi questo è un grosso errore.
Quando inizi a scrivere codice, tu devi capire i concetti,
devi capire i requisiti.
E puoi farla franca con questo in programmi molto
piccoli, ma con programmi più grandi, lo farai è necessario concentrarsi completamente sul design.
Quindi il più grande e il più complesso è il programma,
maggiore è la pianificazione che richiede.
Dovresti sviluppare l'abitudine della pianificazione prima della codifica.
Non limitarti a tuffarti e te ne vai da notare dalle lezioni in
questa classe che faccio molta pianificazione.
Te lo dirò nel sfide quando inizi a scrivere del codice che
è quello che ti serve fare e come dovresti progettarlo.
Perché questo ce la farà più facile per te implementare effettivamente il
codice, che è il passaggio tre.
Quindi tienilo a mente può spesso piantare le cose scrivendo le
cose su carta.
Ci sono tutti i tipi di cose carine documentazione che progetta linguaggi là fuori e
cose che puoi usare.
Ma tu lo vuoi sempre fondamentalmente pianificare in modo efficiente.
E poi mentre stai codificando, io accennato in
precedenza, ma questo è un altro molto, molto importante concetto,
vuoi sempre lavorare a piccoli passi, dividere e conquistare vuoi testare costantemente.
Non vuoi scrivere 100 righe di codice e poi dì, oh, ho
finito, lasciami fare il test.
Perché ora, se non lo fa potrebbe esserci un errore in 100
righe di codice.
Sarà molto più difficile per risolvere quel problema.
Ma se scrivi codice in poco blocchi, cinque righe di codice, testatelo, quindi
scrivete altre cinque righe di codice, provalo, sarà molto più facile
trovare e correggere i tuoi errori.
Quindi concentriamoci sul divide et impera quando scriviamo il nostro codice in questa classe.
Spero che questo abbia aiutato.
Ancora una volta, queste sono solo alcune nozioni di base.
Ho voluto fornire un po 'di terminologia di base.
Molti di voi potrebbero già saperlo molte di queste informazioni.
Ma quando impari un file linguaggio di programmazione,
devi capire queste basi.
Grazie.