2009-07-16 42 views
13

Mỗi khi tôi nhìn thấy một cuộc thảo luận về phát triển phần mềm, luôn có người đề xuất hoặc nâng cao phẩm chất của Smalltalk, có thể là cấu trúc ngôn ngữ đẹp hay thực hiện tốt hơn về cơ bản mọi thứ.Smalltalk có phải là ngôn ngữ phát triển khả thi cho Mac OS X không?

Vì vậy, tôi tò mò, có ai đang phát triển trong Smalltalk không? Smalltalk có thực sự được sử dụng để phát triển phần mềm trên máy Mac không? Hoặc nền tảng mục tiêu cho Smalltalk là gì? Con áp phích cho ngôn ngữ rõ ràng tuyệt vời nhưng không phổ biến này là gì?

Trả lời

17

Smalltalk không thực sự được sử dụng để phát triển ứng dụng GUI trên Mac theo bất kỳ cách nào. Bản phân phối duy nhất có thể tạo ra các ứng dụng gốc là Ambrai Smalltalk, và đã chết trong bản beta AFAIK. Squeak là phiên bản Smalltalk phổ biến nhất hiện nay, nhưng bạn sẽ bị rách chi từ nếu bạn phát hành một ứng dụng Mac OS X trông giống như Squeak. Bạn nên kiểm tra xem liệu bạn có quan tâm đến việc học ngôn ngữ (mà vẫn còn duy nhất theo nhiều cách), nhưng có thể bạn sẽ không phát triển các ứng dụng OS X với nó.

Nếu bạn muốn một cái gì đó tương tự, hãy xem MacRuby. Ruby là gần như bạn có thể nhận được Smalltalk mà không thực sự là Smalltalk - hướng đối tượng tổng thể, năng động, 100% tin nhắn, sử dụng nhiều khối, vv MacRuby là một triển khai đang được phát triển bởi Apple đặc biệt để làm cho các ứng dụng OS X.

Objective-C của Mac OS X cũng được lấy cảm hứng từ Smalltalk (về cơ bản là một phần lớn hệ thống đối tượng của Smalltalk và cú pháp được gắn vào C), nhưng do khả năng tương thích cực của C, nó rơi xa hơn một chút so với cây .

+1

++ MacRuby trông thực sự thú vị.Tôi hy vọng lớp trừu tượng là thực sự mỏng như họ yêu cầu bồi thường mặc dù. Các dự án keo như thế này có một thói quen thuận tiện để bị bỏ rơi và sau đó chết vì những cái chết chậm chạp khi nền tảng diễu hành. Nếu nó không mỏng, và do đó có thể duy trì, nó thực sự sẽ không đáng để đầu tư quá nhiều thời gian vào. – guns

+3

Có một ràng buộc đối tượng-C cho Squeak/Pharo, được trẻ hóa như là một phần của cổng iPhone Squeak (isqueak.org). –

3

Tôi vẫn tin rằng Squeak cũng đáng để điều tra, nếu chỉ để mở rộng tâm trí của bạn một chút. Đối với trẻ em áp phích cho Smalltalk, có thể là Seaside.

4

Luis: bạn có muốn làm ứng dụng dành cho máy tính để bàn cho Mac không? hoặc bạn muốn lập trình trên máy Mac? Ví dụ, nếu bạn muốn làm một ứng dụng web, bạn hoàn toàn có thể sử dụng Squeak hoặc Pharo. Nếu bạn muốn làm ứng dụng mac bản xứ, bạn sẽ thấy các dự án Mars cho Squeak:

http://smallworks.com.ar/productos/Mars

Ví dụ, hầu hết những người sử dụng Pharo và các nhà phát triển đang được Mac.

http://www.pharo-project.org/home

tải xuống và dùng thử ít nhất trong vài giờ!

+0

/productos/Mars không tìm thấy –

7

Hãy xem fscript, trong đó chủ yếu là một ngôn ngữ Smalltalk giống như cho Objective C.

2

Squeak không phải là giao diện của nó. Bạn có thể cấu hình Morphic nhiều (ví dụ như Pharo's là OSX chẳng hạn). Hoặc bạn chỉ có thể sử dụng các tiện ích gốc với wxSqueak.

+0

Xin lỗi nhưng giống như một hóa đơn 3 đô la. Tôi đã nhìn thấy phản ứng của mọi người về ấn tượng đầu tiên về điều đó. Việc cố gắng so sánh Morphic tùy chỉnh với các điều khiển OS X gốc là điều đáng xấu hổ. –

+0

Bạn nói đúng: đôi khi điều khiển hệ điều hành gốc đơn giản là kinh tởm! –

+0

Tôi nghĩ bạn hiểu lầm tôi. Hệ điều hành OS X với tất cả những khiếm khuyết của nó là một trong những thứ tốt nhất mà ngành công nghiệp có thể cung cấp. Morphic là hóa đơn 3 đô la (không phải vì khái niệm mà trải nghiệm Morphic cung cấp). Morphic thậm chí còn ổn khi chơi các sản phẩm công nghiệp chống đạn? không không. Quan điểm của tôi là, nếu chúng ta có thể sử dụng Smalltalk để phát triển các ứng dụng OS X * với * điều khiển gốc chúng ta sẽ mở ra những cơ hội tuyệt vời –

1

này xứng đáng được chăm sóc:

"Objective-Smalltalk được tạo ra đặc biệt để giải quyết vấn đề thực tế đã được gặp trong 25 năm của Objective-C và Smalltalk sử dụng, nhưng với một khuôn khổ lý thuyết mà giải quyết được nhiều những vấn đề này thanh lịch và tối thiểu, thay vì bằng cách bật tính năng đặc biệt sau tính năng đặc biệt. "

http://objective.st/

Các vấn đề liên quan