Mục lục:
- Giữ nó nhỏ
- Sử dụng văn bản
- Đừng quá gắn bó với bất kỳ một nền tảng nào
- Làm một điều tốt
- Cho khán giả tự do
- Xây dựng những thứ để làm việc cùng nhau
- Tự động hóa, tự động hóa, tự động hóa
- Unix đã vượt qua thử thách của thời gian
Unix, dưới mọi hình thức khác nhau, đã có ảnh hưởng sâu sắc đến ngành công nghiệp máy tính. Mặc dù hầu hết người dùng bình thường không giao dịch trực tiếp với nó, hệ điều hành này cung cấp một lượng lớn Internet và gần như tất cả các điện thoại thông minh ngoài kia. Các lập trình viên thích nó, và với lý do rất tốt. Rất nhiều sự hấp dẫn của Unix đến từ một số quyết định thiết kế ban đầu mà người tạo ra nó đã đưa ra, nhiều trong số đó có bài học cho những người bên ngoài thế giới lập trình. Các lập trình viên Unix thường tuân thủ triết lý lập trình nhấn mạnh vào sự đơn giản và thanh lịch, nhưng bạn có thể áp dụng những bài học này ngoài việc phát triển phần mềm. (Nhận một số nền tảng về HĐH này trong Điều gì làm cho Unix đặc biệt?)
Giữ nó nhỏ
Một điều đáng ngạc nhiên đối với nhiều người đã quen với các chương trình lớn, nguyên khối là số lượng lớn các tiện ích nhỏ mà nhiều hệ thống Unix và Linux đi kèm. Có các công cụ để tìm kiếm thông qua văn bản, di chuyển tệp xung quanh, xem tệp, chỉnh sửa tệp và những thứ khác. Hầu hết chúng chỉ là một vài kilobyte, với một vài ngoại lệ.
Ngoài ra, rất nhiều trong số các chương trình này không có nhiều chức năng đối với chúng. Một trình soạn thảo văn bản, ví dụ, thường sẽ không có trình kiểm tra chính tả. Các chương trình Unix được thiết kế để làm việc cùng nhau và thực hiện nhiều hơn một điều, các khái niệm sẽ được giải thích chi tiết hơn sau này.
Theo một câu ngạn ngữ chung, "10 phần trăm công việc giải quyết 90 phần trăm các vấn đề." Nói cách khác, có lẽ bạn tốt hơn với một công cụ nhỏ hơn, đơn giản hơn một chương trình phức tạp với các tính năng mà bạn thậm chí không sử dụng.
Sử dụng văn bản
Một điều Unix nổi tiếng - hoặc có lẽ nổi tiếng - là sự phụ thuộc nặng nề vào văn bản thuần túy. Mặc dù điều này có vẻ thô thiển trong thời đại đồ họa và GUI có độ phân giải cao, nhưng có một số lợi ích chính cho việc này.
Hầu như tất cả các tệp cấu hình hệ thống được giữ ở dạng văn bản thuần túy. Điều này có nghĩa là người dùng có thể xem và chỉnh sửa các tệp này (miễn là họ có quyền phù hợp) mà không cần các công cụ đặc biệt. Không có thứ gọi là Registry Editor trong phiên bản Unix và Linux, vì không có thứ nào giống như registry.
Văn bản là mẫu số chung thấp nhất cho dữ liệu, có nghĩa là bất kỳ hệ thống nào khác cũng có thể đọc và ghi tệp văn bản. Điều này không chỉ cho phép trao đổi tập tin dễ dàng mà còn là dữ liệu "bằng chứng trong tương lai", đảm bảo rằng nó có thể được đọc bởi thế hệ máy tiếp theo và thế hệ máy tiếp theo sau đó. Điều này đưa chúng ta đến …
Đừng quá gắn bó với bất kỳ một nền tảng nào
Nền tảng phần cứng là mát mẻ. Nền tảng phần mềm rất tuyệt Chúng tôi hiểu rồi. Nhưng các nền tảng có tuổi thọ, vì nhiều người vẫn dựa vào Windows XP đang tìm hiểu. (trong: Tại sao bây giờ là thời gian để bỏ Windows XP.)
Nền tảng đến và đi, và nếu bạn bị cuốn vào một, nó có thể gây đau đớn khi bạn phải di chuyển.
Các nhà thiết kế của Unix đã tạo ra một sự thay đổi lớn khi họ viết lại hệ thống bằng C, một ngôn ngữ cấp cao, thay vì ngôn ngữ lắp ráp PDP-7. C có thể chạy trên các nền tảng phần cứng khác nhau, biến Unix thành hệ điều hành đầu tiên có thể được chuyển sang các nền tảng phần cứng khác nhau với tương đối ít thay đổi.
Tương phản điều này với đối thủ cũ của Unix, VMS, được liên kết chặt chẽ với dòng máy tính mini VAX đầu tiên của Tập đoàn Thiết bị kỹ thuật số, sau đó là bộ xử lý Alpha và cuối cùng là bộ xử lý Itanium. HP, chủ sở hữu hiện tại của các công nghệ của DEC, cuối cùng đã bắt đầu rút phích cắm trên VMS.
Unix, dưới nhiều hình thức khác nhau, đang phát triển mạnh, đặc biệt là dưới các phiên bản nguồn mở khác nhau, đặc biệt là Linux.
Làm một điều tốt
Các chương trình Unix được thiết kế để làm một việc và làm tốt, thay vì cố gắng trở thành mọi thứ cho mọi người. Hầu hết các lập trình viên Unix thích làm việc trong một trình soạn thảo văn bản chỉ chỉnh sửa văn bản, thay vì một IDE phức tạp.
Các chương trình Unix được thiết kế dưới dạng các bộ lọc để làm một cái gì đó cho luồng văn bản và không thêm gì khác, tạo thành một đường ống dẫn.
Những ứng dụng di động nào chạy trên điện thoại thông minh chạy Unix? Họ cũng làm một việc tại một thời điểm.
Cho khán giả tự do
Sự phát triển của Linux cũng đã phổ biến những gì được gọi là các phong trào phần mềm miễn phí và nguồn mở. Nếu bạn là một lập trình viên lành nghề, bạn có thể sửa đổi mã nguồn để có được những gì bạn thích. Nhưng Unix luôn đặc biệt ở chỗ nó cho phép bạn tự do làm bất cứ điều gì bạn muốn trên máy tính, ngay cả khi cuối cùng bạn tự bắn vào chân mình. (Một số người nói rằng nguồn mở quá tốt là đúng. Phải không? Tìm hiểu tại đây.)Xây dựng những thứ để làm việc cùng nhau
Một trong những tính năng đặc biệt của Unix là khả năng của shell để chuyển hướng đầu vào và đầu ra của các lệnh thành các "đường ống" phức tạp. Điều này giải thích định hướng văn bản của nhiều chương trình Unix và tại sao đầu ra của chúng quá ngắn gọn.Tự động hóa, tự động hóa, tự động hóa
Unix cũng phổ biến khái niệm kịch bản với các shell khác nhau, đầu tiên là shell Bourne, sau đó là shell C, sau đó là Bash. Một số ngôn ngữ script đã được cắt, bao gồm Perl và Python. Nếu bạn tự động hóa các tác vụ đơn giản, thì bạn sẽ có nhiều thời gian hơn để làm những việc hữu ích.Unix đã vượt qua thử thách của thời gian
Unix đã kiên trì dưới hình thức này hay hình thức khác kể từ năm 1969 đơn giản vì triết lý đằng sau nó là không thể cưỡng lại. Ngay cả khi bạn không phải là lập trình viên, bạn vẫn có thể áp dụng những ưu điểm của sự đơn giản và thanh lịch vào bất kỳ dự án nào, cho dù là quản lý, quản trị hệ thống hay thậm chí trong các lĩnh vực khác trong cuộc sống của bạn. Để có cái nhìn toàn diện về triết lý Unix, hãy xem cuốn sách "Linux và triết lý Unix" của Mike Gancarz. Có đầy đủ các bài học bạn có thể áp dụng cho công việc CNTT của mình - và hơn thế nữa.