2009-09-28 28 views
5

Tôi nhận được "Câu hỏi bạn đang yêu cầu xuất hiện chủ quan và có khả năng bị đóng". nhưng bạn có thể trả lời CÓ hoặc KHÔNG.Bạn có tin tưởng mono làm nền tảng để xây dựng startup không?

- chỉnh sửa: Câu hỏi chủ quan là những câu hỏi thường được trả lời với một ý kiến, vì vậy điều gì xấu đến vậy khi hỏi ý kiến ​​của cộng đồng? Ngoài ra BTW, tôi yêu cầu ý kiến ​​ của bạn, ý kiến ​​của bạn không phụ thuộc vào bản chất của dự án của tôi.

+2

Bạn có thể lặp lại cụm từ này để làm cho nó ít chủ quan hơn một chút. Bạn đang thực sự yêu cầu điều gì? Bạn đang cố gắng xây dựng cái gì và tại sao bạn lại xem xét đơn điệu? – Charles

+2

@Charles - no, he _has_ để thuật lại nó để nâng cao câu hỏi lên cấp độ "chủ quan và tranh luận". Cho đến nay nó hầu như không đủ điều kiện là "không phải là một câu hỏi thực sự" :-) – ChssPly76

+0

Đối với tôi câu hỏi này là quá chung chung và không có câu trả lời rõ ràng, có thể (ít nhất một phần) được giải quyết bằng cách viết lại nó. Như nó là, nó giống như yêu cầu "Java là tốt?", Mà chắc chắn nhất sẽ bị đóng cửa. – cletus

Trả lời

7

Chỉ khi bạn dự định thực hiện một số doanh nghiệp khỉ.

(chỉnh sửa: ghi chú cho người khám phá; nghiên cứu 'mono' có nghĩa là tiếng Tây Ban Nha, và nhìn vào biểu tượng của nó, cũng nhìn xung quanh cảm giác hài hước của bạn, tôi nghi ngờ bạn có thể đã mất nó).

+0

+1 cho nỗ lực hài hước. – MusiGenesis

+0

Chúc mừng :) Tôi đoán trong việc nhận thức được nó nên là một bình luận. Oh well. Đám đông náo loạn. –

+1

Ngay cả * I * đã nói "hài hước * cố gắng". *: P – MusiGenesis

11

Chọn một vài ví dụ từ "Companies using Mono":

  • Novell: Novell sử dụng Mono cho cả client và server ứng dụng:
    • ZENworks Quản lý Linux
    • sản phẩm tìm kiếm Desktop của nó Beagle
    • quản lý ảnh (F-Spot)
    • Máy chủ phần mềm nhóm (Hula)
  • Nghệ thuật điện tử sử dụng nó để cấp nguồn Sims3.
  • Medsphere: Phần mềm Medsphere OpenVista cho phép các bác sĩ truy cập thông tin đầy đủ về sức khỏe của bệnh nhân tại điểm chăm sóc và nó chạy trên cả Windows và Linux, nhờ Mono.

Nếu đó là đủ tốt cho các công ty như những, Mono thể là đủ tốt cho bạn - nó chỉ phụ thuộc những gì bạn thực hiện nó. Nếu khởi động của bạn bị thất bại, Mono sẽ không tạo ra sự khác biệt; nếu bạn đã có một khái niệm tuyệt vời và một đội ngũ tuyệt vời, nó không quan trọng quá nhiều cho dù bạn sử dụng Mono, Visual Studio, hoặc bất cứ IDE nào khác.

+0

Novell kinda tài trợ Mono, do đó, không ai ngạc nhiên. – MusiGenesis

+6

Nhưng họ tài trợ nó bởi vì nó hoạt động cho họ, không phải vì họ đang cố gắng lừa dối mọi người trên Stack Overflow. – jrockway

+2

@ jrockway: Tôi không có nghĩa là họ đang cố gắng đánh lừa bất kỳ ai, nhưng vượt qua thực tế là Novell sử dụng Mono giống như việc đánh giá thực tế rằng Sun sử dụng Java. – MusiGenesis

0

Nó thực sự phụ thuộc vào ứng dụng. Nếu ứng dụng của bạn đứng hoặc rơi với mono thì không.

Cũng giống như với cổ phiếu, bạn không đặt tất cả tiền của bạn vào một, quá nguy hiểm.

+0

Bạn có nói rằng khi bạn xây dựng các dự án của bạn, bạn sử dụng càng nhiều công nghệ càng tốt, chỉ để đa dạng hóa?:) – user179997

+0

Tôi nghĩ ẩn dụ của anh ấy hơi yếu, nhưng về cơ bản anh ấy nói rằng anh ấy sẽ không căn cứ toàn bộ công ty của mình trên Mono. Ví dụ, nếu dự án Mono hoàn toàn tan rã vào ngày mai thì công ty của bạn có ổn không? – tster

+0

Điều tôi muốn nói là nền tảng không quan trọng, tuy nhiên, nếu tôi có ý tưởng về một ứng dụng chạy trên windows .net và mono thì tốt nhưng tôi sẽ không làm ứng dụng chỉ cho mono (nếu sau đó toàn bộ doanh nghiệp của tôi phụ thuộc vào nó). Lý do cho điều này là mono mặc dù một điều tuyệt vời sẽ luôn luôn là một hoặc hai bước sau cửa sổ. –

2

Vì đó là một câu hỏi chung, tôi sẽ cung cấp cho một scenero.

Ví dụ: bạn làm việc với và sử dụng khuôn khổ .NET và bán một số loại sản phẩm. IMO: Nếu đó là một sản phẩm dựa trên máy chủ, bạn có cơ hội tốt để có khách hàng muốn chạy nó trên Linux.

  1. Bạn có thể yêu cầu những khách hàng này bỏ qua.
  2. Bạn có thể cung cấp cho họ khả năng chạy qua Mono.

Cả hai tùy chọn đều có nhược điểm. Nếu bạn chọn số 1, sẽ mất doanh thu và do đó doanh thu. Điều này phụ thuộc vào số lượng khách hàng tiềm năng của bạn muốn sử dụng Linux tất nhiên.

Tùy chọn thứ hai có nhược điểm ở chỗ bạn phải kiểm tra ứng dụng của mình trong cả khung Mono và .NET. Điều này tiêu tốn thời gian của nhà phát triển và thời gian là tiền bạc. :)

Nhưng dù sao đó là quyết định bạn phải đưa ra và quyết định đúng là rất ứng dụng và thị trường cụ thể.

+0

Khách hàng là tiền, nó sẽ là một sản phẩm khá lame nếu thu nhập từ khách hàng Linux không vượt quá chi phí thử nghiệm, hoặc thậm chí chuyển, sản phẩm. Hoặc một sản phẩm cực kỳ thích hợp, tôi sẽ cung cấp cho bạn điều đó. Ngoài ra Linux peeps có nhiều tiền hơn để mua sản phẩm của bạn, bởi vì chúng tôi thông minh hơn (và hầu hết là có công việc được trả lương cao trong CNTT!) –

0

Có, bởi vì ngay cả khi ứng dụng của bạn không thành công trên Mono, nó vẫn hoạt động tốt trong Windows. Và cuối cùng tôi đã kiểm tra, có ít nhất một vài công ty thành công viết phần mềm cho Windows.

+0

Đúng vậy, Windows là một nền tảng khả thi cho một doanh nghiệp, tuy nhiên nếu tôi đang nghĩ đến mono là vì tôi muốn có một nền tảng nguồn mở, bởi vì tôi tin vào mã nguồn mở và bởi vì tôi không có tiền. – user179997

+4

Vâng, .Net cũng miễn phí. Và tin tưởng vào nguồn mở là một cách hay để tiếp tục không có tiền, thật không may. – MusiGenesis

+0

Khởi động có thể nhận được một số giấy phép Visual Studio, đăng ký MSDN phổ quát và giấy phép Office trong 3 năm với giá khoảng 100 đô la. – MarkJ

0

Chưa bao giờ sử dụng Mono, tôi rất muốn nghe ý kiến ​​của mọi người về ví dụ về sản phẩm phù hợp để được xây dựng ở Mono và một ví dụ không phải là.

+1

Bất kỳ ứng dụng nào dựa vào nội dung bên ngoài môi trường .Net (chẳng hạn như các cuộc gọi API OS) sẽ ít phù hợp với Mono hơn là một thứ thuần túy .Net. – MusiGenesis

+0

Vì vậy, bạn đang nói rằng không có gì trong ngôn ngữ hoặc khung chính nó không được hỗ trợ bởi/không phù hợp để sử dụng trong Mono? – Ashby

+0

@ Ashby: đó là chính xác, mặc dù nó phụ thuộc vào những gì bạn có nghĩa là "trong ngôn ngữ hoặc khuôn khổ". Ví dụ, InteropServices không thể phủ nhận một phần của .Net, nhưng nếu bạn đang sử dụng chúng trong ứng dụng .Net, thì ứng dụng của bạn hầu như chắc chắn sẽ không hoạt động chính xác trong Mono (vì bạn sử dụng InteropServices để tương tác với Windows API, trong so nhung cai khac). – MusiGenesis

1

Here là bài đăng blog gần đây của Jeffrey Stedfast có thể làm sáng tỏ một số câu hỏi này. Tôi đang phát triển cho Windows và sẽ tiếp tục làm như vậy vô thời hạn, vì vậy tôi không có một con chó nào trong cuộc chiến này.

0

Tôi đã tham gia vào nhiều công ty khởi nghiệp. Câu hỏi của bạn không thể được chúng tôi trả lời, bởi vì nó giống như một câu hỏi quản lý rủi ro: Nếu có điều gì đó không thành công, bạn có thể sửa chữa hoặc giải quyết một cách hợp lý với nỗ lực hợp lý không? Và bao nhiêu lần bạn mong đợi nó thất bại?

Để trả lời câu hỏi này, bạn cần phải biết bạn muốn hỗ trợ nền tảng nào, cách bạn sẽ sử dụng đơn âm và bạn có kỹ năng gì. Nếu bạn muốn hỗ trợ tất cả các nền tảng, mà trên đó mono chạy, bạn sẽ gặp nhiều vấn đề hơn, ví dụ như nếu bạn chỉ muốn hỗ trợ Mono trên Ubuntu. Mono là mã nguồn mở, nhưng nếu bạn muốn sửa lỗi trong mono, bạn cần phải có kỹ năng và thời gian để làm chính xác điều đó.

Một điều nữa, bạn muốn sản phẩm của mình đáng tin cậy như thế nào? Nếu bạn nhìn vào một sản phẩm như máy ghi đĩa cứng DVB-C của Samsung, đôi khi nó thực sự bị treo. Ngay cả một Playstation 3 bị treo một lần trong một thời gian. Nếu bạn tạo máy chủ internet, sự cố thường có thể bị ẩn nếu khách hàng thử lại sau khi hết thời gian chờ.

Nếu tôi cần mono khi khởi nghiệp, và tôi sẽ có ít nhất 1 lập trình viên có kỹ năng bên cạnh bản thân tôi ngay từ đầu, tôi sẽ không gặp vấn đề gì với việc chọn đơn vị làm nền tảng.

2

Tôi đã làm việc trên Mono cho dự án Windows/Linux thương mại đa nền tảng.

  • Cốt lõi của Mono (runtime) là khá vững chắc - đó là tuyệt vời như thế nào bạn có thể biên dịch trên Windows và chạy trên Linux.
  • MonoDevelop khá dễ vỡ. Hy vọng rằng điều đó sẽ thay đổi, nhưng đối với bây giờ nó rất đau đớn. Nếu tất cả những gì bạn cần là hỗ trợ thời gian chạy Linux (không phải là Linux dev), bạn sẽ giảm được các vấn đề của mình. Tôi sẽ không muốn viết một dự án có kích thước lớn trong dự án .
  • Thường xuyên kiểm tra chéo. Đừng làm công việc của một tuần trên Windows, sau đó tìm thấy bạn phải viết lại cho Linux (hoặc ngược lại). Cố gắng xây dựng và thử nghiệm trên cả hai môi trường mỗi ngày.
  • Một số thứ .NET không làm việc hoạt động trên Mono. Rõ ràng bạn không nên bắt đầu một ứng dụng WinForms trên WPF và mong đợi nó hoạt động. Lập kế hoạch các tính năng của bạn: không đi một nửa qua số và tìm Mono không hỗ trợ công nghệ cụ thể mà bạn cần .
  • Lập kế hoạch trước và kiểm tra từng ngôn ngữ đơn lẻ và tính năng khuôn khổ bạn nghĩ là bạn sẽ cần. Các thư viện Mono là không đầy đủ và bạn không thể giả định bạn có một khuôn khổ đầy đủ.
+1

Tôi có lẽ phải hội đủ điều kiện cho điểm của mình - Tôi nghĩ Mono là một phần phát triển tuyệt vời, và tôi nghĩ MonoDevelop/sẽ/tuyệt vời trong tương lai. Tôi hy vọng không ai nghĩ rằng tôi đã bashing nó! – stusmith

+0

@stusmith: ý của bạn là ... ... bạn không nên khởi động ứng dụng WinForms ** hoặc ** WPF ... "? Tôi nghĩ ít nhất WinForms đã làm việc ở Mono? – MusiGenesis

+0

Không chắc chắn ... Tôi đoán tôi giả định rằng nó không ... nhưng điều đó chỉ nhấn mạnh điểm: không giả định, tìm hiểu và tìm ra sớm. – stusmith

0

Có nếu bạn dựa vào trạng thái hiện tại của Mono. Không, nếu bạn dựa vào những lời hứa tương lai thì Mono sẽ là gì.

Với tùy chọn đầu tiên, vẫn còn có nguy cơ liên quan đến việc phải chuyển sang nền tảng khác sớm hay muộn, bởi vì Mono có thể trì trệ. Nếu kế hoạch của bạn là hợp lệ, nhà nước của nghệ thuật vẫn sẽ cung cấp cho bạn đủ của một nền tảng để có được các ressources cho di chuyển. Nếu bạn không thể chấp nhận rủi ro đó, đừng tìm thấy một startup.

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