Metodele de creare a programelor de prelucrare CNC sunt împărțite în programare manuală (umană) și programare automată. În programarea manuală, întregul program este scris manual conform formatului de instrucțiuni specificat de sistemul CNC. Programarea automată, sau programarea pe computer, poate fi împărțită în metode de programare automată bazate pe limbaje și desene. Cu toate acestea, indiferent de metoda de programare automată utilizată, sunt necesare hardware și software suport corespunzător.
Pentru a îmbunătăți nivelul de automatizare a producției, a scurta timpul de programare și a reduce costurile de prelucrare CNC, o serie de tehnologii avansate de prelucrare CNC au fost dezvoltate și utilizate în industria aerospațială. De exemplu, Computer Numerical Control (CNC) folosește un mic sau un microcalculator pentru a înlocui controlerul în sistemul CNC și folosește software stocat în computer pentru a efectua funcții de calcul și control. Acest sistem CNC conectat-înlocuiește treptat sistemul CNC inițial. Direct CNC folosește un singur computer pentru a controla direct mai multe mașini-unelte CNC, ceea ce este foarte potrivit pentru producția de aeronave în-loturi mici, cu ciclu scurt-. Sistemul de control ideal este un sistem de control adaptiv care poate schimba continuu parametrii de prelucrare. Deși sistemul în sine este complex și costisitor, poate îmbunătăți eficiența și calitatea prelucrării. Pe lângă îmbunătățirile aduse hardware-ului, cum ar fi sistemele CNC și mașinile-unelte, un alt aspect important al dezvoltării CNC este dezvoltarea de software. Programarea-asistată de computer (numită și programare automată) implică programatorii care scriu programe într-un limbaj de control numeric (NC), le introduc într-un computer pentru traducere și, în final, computerul scoate automat bandă perforată sau bandă magnetică. Un limbaj NC utilizat pe scară largă este APT (Limbajul de programare automată). Este împărțit în general într-un program de procesare principal și un program de post{13}}procesare. Primul traduce programul programatorului și calculează traseul sculei; acesta din urmă compilează traseul sculei într-un program de prelucrare pentru mașina-uneltă NC. Prelucrarea NC implică pre-scrierea programelor pe un computer înainte de prelucrarea piesei de prelucrat, apoi introducerea acestor programe într-o mașină-uneltă controlată de computer-pentru prelucrare-pe bază de instrucțiuni sau scrierea directă a instrucțiunilor pe panoul de control al unei astfel de mașini-unelte. Procesul de prelucrare include avansarea sculei, schimbarea sculei, schimbarea vitezei, schimbarea direcției și oprirea, toate acestea fiind finalizate automat. Prelucrarea NC este o metodă avansată în fabricarea de matrițe moderne. Desigur, prelucrarea NC nu se limitează la prelucrarea pieselor de matriță; aplicațiile sale sunt-foarte larg.

