2009-03-05 11 views
9

Tôi quan tâm đến việc tìm kiếm điều gì đó. Trong Delphi mặc định kể từ khi bắt đầu khi mua các thành phần đã được để có thể mua chúng với nguồn (ngay cả khi nó có thể là một lựa chọn hơi đắt tiền hơn). Điều này có ý nghĩa trong Delphi vì một số lý do, trước hết Borland dẫn đầu bằng cách cung cấp toàn bộ nguồn của VCL với mọi cài đặt của Delphi, nhưng cũng có nguồn được coi là cần thiết kể từ khi bạn nâng cấp Delphi bạn phải biên dịch lại và đôi khi tác giả đã đi ra khỏi kinh doanh.Có bao nhiêu người đã lạm dụng tùy chọn mua 'với nguồn' của bạn?

Tôi quan tâm đến việc tìm hiểu xem có bất kỳ nhà văn thành phần Delphi nào đã từng có lý do để hối tiếc bán thành phần của họ 'với nguồn' không? Có ai đó đã cố gắng phát hành một sản phẩm cạnh tranh dựa trên mã của bạn hay không, hoặc chuyển nó thành của riêng họ?

Lý do tôi hỏi là vì nó vẫn có vẻ là ngoại lệ hơn là chỉ tiêu để cung cấp tùy chọn 'có nguồn' khi mua điều khiển ActiveX hoặc hội đồng .NET. Có lẽ một sự đảm bảo rằng mọi người không muốn nguồn cho các mục đích bất chính có thể thuyết phục nhiều người viết thành phần hơn để cho phép mã nguồn được mua cùng với thành phần.

Trả lời

7

Tôi có kinh nghiệm cá nhân về điều này. Tôi đã từng bán thư viện thành phần và chức năng cho Delphi (Chức năng Clipper cho Delphi, AKA CFD); chúng tôi đã đi từ phiên bản 1 trong '96 lên phiên bản 5 vào năm 2000 khi tôi nhận một công việc không cho phép ánh trăng. Chúng tôi đã có hơn 5000 người dùng đã đăng ký ở cuối; Tôi vẫn cung cấp khá một vài trong số họ với bản cập nhật miễn phí và sửa lỗi thường xuyên.

Tôi chưa bao giờ có bất kỳ lý do gì để không cung cấp nguồn. Trong thực tế, không có tùy chọn để mua CFD mà không có nguồn. Tôi sẽ không mua bất kỳ thư viện thành phần Delphi thương mại nào mà ứng dụng của tôi sẽ phụ thuộc vào mà không có nguồn, vì những lý do bạn trích dẫn (biên dịch lại với các bản phát hành và nhà cung cấp Delphi mới biến mất).

+0

Tôi cho rằng bạn có nghĩa là "Tôi không bao giờ có bất kỳ lý do gì cho * không * làm cho nguồn có sẵn"? :-) – onnodb

4

Trừ khi người viết thành phần đang sử dụng một số hình thức làm xáo trộn nguồn cho bất kỳ hội đồng .Net nào có thể thu được bằng cách sử dụng bộ phản xạ.

Tôi đã sử dụng tính năng này trên các cụm từ Microsoft cũng như các nhà cung cấp khác để theo dõi các sự cố trong mã của họ. Trong một số trường hợp, tôi đã đi trước và vá vấn đề và biên dịch lại nó; nhưng làm điều đó với nguy hiểm của chính bạn.

+0

Điều này có thể thực tế nếu bạn muốn tìm cách họ đã làm một điều cụ thể, nhưng nó là rất không thực tế nếu bạn muốn xây dựng lại hoàn toàn mã nguồn cho ứng dụng. –

+0

Tôi không chắc tại sao bạn cho rằng điều đó không thực tế. Thông thường tất cả mọi thứ được biên dịch xuống chỉ là một vài hội đồng đó là rất dễ dàng để tách rời nhau. – NotMe

+0

Bạn sử dụng phương pháp nào để biên dịch lại nguồn mà bạn không có? Tôi chưa bao giờ làm điều này, nhưng tôi không thể tưởng tượng rằng bạn đang sao chép mã ra khỏi phản xạ ... –

0

Tôi gặp sự cố đặc biệt với thư viện skin .Net. Tôi đã tìm thấy không có đủ tốt mà sẽ bao gồm các mã cho một mức giá khá kinh tế. Tôi đang nói về giá mà đi qua các dòng giá $ 1000USD, mà tôi nghĩ rằng đó là thiên văn học cho một nhà phát triển tự do, cho chỉ là một phần của phần mềm. Nhưng, những thứ khó thực hiện hơn trong mỗi ngôn ngữ là tốn kém nhất, vì vậy có một mối quan hệ giữa hai yếu tố đó trong khó khăn trong việc thực hiện một cái gì đó tương tự như bản thân bạn. Tôi biết điều này không có câu trả lời cho câu hỏi của bạn, nhưng quan điểm của riêng tôi về sự vật.

0

Tôi không có kinh nghiệm cá nhân với điều này, nhưng tôi biết rằng mã watermarking có sẵn và một số nhà cung cấp đã sử dụng nó. Không chắc chắn nó sẽ thành công như thế nào.

Tôi chưa bao giờ nghe tin tức về bất kỳ ai phát hành sản phẩm cạnh tranh với mã nguồn từ một nhà cung cấp thương mại khác. Tuy nhiên nó thường xuyên xảy ra với các nguồn mở.

1

Đối với tất cả các thành phần Delphi mà tôi đã phát triển trong 10 năm qua, mã nguồn đầy đủ luôn được bao gồm. Tuy nhiên, nó sẽ là một lợi thế lớn để có một định dạng nhị phân tương thích (DCU) tương tự như Java và .NET trong Delphi cho các phiên bản dùng thử, hoặc các phiên bản 'phiên bản cá nhân' chi phí thấp không thu hút các nhà phát triển thương mại thực sự, bởi vì của mã nguồn bị thiếu. Biên dịch DCUs cho Delphi 5,6,7,2006, 2007 và 2009 là có thể (nếu các giấy phép Delphi đang có), nhưng việc quản lý rất nhiều phiên bản mã khác nhau đòi hỏi rất nhiều công việc cho các hệ thống xây dựng và đóng gói tự động ...