Theo mình nghĩ có rất nhiều cách lập trình, cả lập trình thêm và lập trình phát triển, phần mềm nào cũng có API để cho người dùng và chính hãng phát triển thêm.
Bạn rusbolt nói đó là chuyện của ....hãng, theo mình không đúng đâu. Việc lập trình phát triển là đáp ứng yêu cầu làm cái gì?cho ai? và làm như thế nào..., chẵng hạn kỹ sư hãng sẽ nghiêm cứu và lập trình thêm theo các yêu cầu mà người dùng phát sinh thêm trong quá trình thiết kế sản phẩm đặc biệt của họ, họ không thể ngồi và...tự suy nghỉ ra thêm các lệnh được. Lịch sử của cad/cam thường gắn liền với những dự án lớn của quân đội Mỹ như khởi thủy của nó. Lập trình ở hảng phần mềm, có hai loại một là lập trình về mặc công nghệ...các kỹ sư này là các chuyên gia chế tạo, vận hành máy...và đội ngủ còn là là người diển dịch nó ra ngôn ngử của máy tính...dỉ nhiên các thuật toán về toán học thì họ sẽ phát tiển thêm.
Ở việt nam theo mình, cad/cam chỉ dừng lại ở việc sử dụng...và phần lớn là nghiên cưu cho kỹ các phần mềm là ok...nhưng các hãng lớn ở nước ngoài..họ nghiên cứu và lập trình thêm hàng ngày. Nếu nhìn kỹ bạn sẽ thấy các lệnh của cad/cam và các nguyên lý thiết kế mà mô phỏng hoặc phát tiển theo cách công nghệ mà thực tế sản xuất thực hiện.
Ví dụ trong công ty bàn ghế, máy tính, bàn phím, con chuột..tất cả các thiết bị đều gắn một code cho nó, ví dụ A13F6...A là dãy nhà, 13...phòng, F tầng 6 là bàn thứ 6...tất cả dử liệu được đưa vào phần mềm quản lý, ngạc nhiên là bạn hư chuột, chỉ vào phần mềm và gỏ mã số đó, hôm sau có người đền ngay ban của bạn và thay chính xác con chuột đó. Và ví dụ, phòng thiết kế có nhiều người, có một người công việc của họ suốt ngày chỉ ...nhìn người khác làm việc và thống kê những thao tác mà người đó làm hàng ngày....đưa vào phần mềm tính toán và tính ra ai trong số họ có xác xuất đi in, ..di chuyển nhiều nhất, hôm sau máy in sẽ được bố trí gần chổ người đó nhất cho quãng đường đi lại là ít nhất. Trong cad/cam, ví dụ như bạn dùng phần mềm, do chi tiết của bạn phải bạn thiết kế cái pad, trên cái pad đó đục thêm môt cái lổ,, theo thống kê do đặc thù công việc của bạn, bạn sử dụng hai lệnh đó ...rất nhiều lần và lặp đi lặp lại...người của hãng sẽ ghi nhận cái đó...và sau đó họ gộp cả hai lệnh lại làm một.
Kiến thức công nghệ ừng dụng phần mềm vào thiết kể sản phẩm gì, phần mềm sẽ được phát triển ngày càng chuyên sâu và tự động hóa càng theo hướng ấy. Lập trình ở đây là cả về công ngệ và phần mềm..., công ngệ là từ hãng và người sử dụng, phần mềm cũng tương tự. Nếu bạn chỉ thiết kế đơn thuần, extrude, revolve...swept..thì không có gì để nói, nhưng bạn làm khuôn nhựa..khuôn dập, thiết kế mô phỏng động học, động lực học...bạn sẽ thấy rỏ hơn lập trình (công nghệ+phần mềm).