ওপেন সোর্স পিএইচপি অ্যাপ্লিকেশন প্রকাশের জন্য সেরা অনুশীলন


10

আমি একটি জীবিকার জন্য একজন পিএইচপি বিকাশকারী তবে এর আগে কখনও কোনও ওপেন সোর্স প্রকল্পে কাজ বা অবদান রাখিনি।

আমি নিজের ব্যবহারের জন্য একটি সিএমএস বিকাশ করছি। আমার একটি কর্মক্ষম প্রোটোটাইপ রয়েছে এবং আমি মনে করি এটি একবার প্রস্তুত হয়ে গেলে (সম্ভবত কয়েক মাস সময়) এটি পিএইচপি সম্প্রদায়টির আগ্রহী হতে পারে be

আমি মোটামুটি আত্মবিশ্বাসী বিকাশকারী তবে এমন কিছু ক্ষেত্র রয়েছে যেখানে আমার জ্ঞানের অভাব রয়েছে, বিশেষত যখন ওপেন সোর্স ইস্যুতে আসে:

  • প্রকল্পটি প্রচার করার এবং / অথবা সহযোগিতা করতে আগ্রহী এমন অন্যদের খুঁজে পাওয়ার সর্বোত্তম উপায় কী
  • আমার সিএমএস কেকপিএইচপি দ্বারা চালিত এবং মূলত এটির উপরে একটি স্তর হিসাবে বসে। আমি গিটহাবের উপর কেকপিএইচপি প্রকল্পটি চালু করেছি: আমি এর আগে সংস্করণ নিয়ন্ত্রণ ব্যবস্থা (এসভিএন) ব্যবহার করেছি তবে আমি জিআইটি-তে মোটামুটি নতুন তাই নিশ্চিত হতে চাই যে আমি "সেরা উপায়ে" জিনিস করছি
  • লাইসেন্স সংক্রান্ত সমস্যা সম্পর্কে আমি কীভাবে তা জানতে পারি? আমার অ্যাপ্লিকেশনটির জন্য কোন ওপেন সোর্স লাইসেন্সটি সেরা? এছাড়াও, আমার প্রকল্পটি অন্যান্য অনেকগুলি ওপেন সোর্স প্রকল্পের কাছ থেকে ধার করে, উদাহরণস্বরূপ আমার কাছে কোডের কিছু বিভাগ রয়েছে (যা আমি প্রচুর পরিমাণে সংশোধন করেছি) তবে যার কপিরাইট / লাইসেন্সিং বিজ্ঞপ্তিগুলি আমার কাছে রয়েছে- আমি জানি না যে আমার বাধ্যবাধকতাগুলির শর্তাবলী কী? এই রাখা

এগুলি আমার কাছে থাকা প্রশ্নের কয়েকটি উদাহরণ, তবে আমার মনে হয় সেখানে কিছু সংস্থান থাকতে হবে যা আমার পক্ষে কার্যকর হবে। শুরু করার জন্য সেরা জায়গাটি কোথায়, সর্বোত্তম সম্প্রদায় / সাইটগুলি কী রয়েছে যা এই সমস্যাগুলি জুড়ে? আমি চারপাশে একবার দেখেছিলাম কিন্তু অনেক কিছু নিয়ে আসতে সক্ষম হইনি ...


লাইসেন্সিং স্টাফ সম্পর্কে বেশ কয়েকটি ভাল উত্তর ছিল, অন্যান্য প্রশ্ন সম্পর্কে কোনও ধারণা? সম্ভবত এটি বেশ কয়েকটি পোস্টে বিভক্ত হওয়া উচিত ছিল!
ব্যবহারকারী 916336

উত্তর:


5

আমি কোনও আইনজীবী নই, তবে আমি এটির চেষ্টা করব।

কেকপিএইচপিকে এমআইটি লাইসেন্সের অধীনে লাইসেন্স দেওয়া হয়, যার মূলত অর্থ এই সফ্টওয়্যারটির সাথে লাইসেন্সটি বিতরণ করার শর্তে মালিকানাধীন সফ্টওয়্যারটির মধ্যে পুনরায় ব্যবহারের অনুমতি দেয়। এটি জিপিএল লাইসেন্সগুলির সাথে সামঞ্জস্যপূর্ণ , যা প্রচুর ওপেন সোর্স প্রকল্পের আওতায় প্রকাশিত হয়।

অন্যান্য প্রকল্পগুলির জন্য যেমন আপনি "ধার" করেন, আপনাকে তাদের লাইসেন্সের ধরণগুলি পরীক্ষা করতে হবে এবং একে অপরের সাথে সামঞ্জস্যতা এবং আপনি যে লাইসেন্স ব্যবহার করতে চান তা পরীক্ষা করতে হবে। তাদের মধ্যে যদি কোনও জিপিএল লাইসেন্স ব্যবহার করে তবে আপনাকে জিপিএল-এর সাথে লাইসেন্সের রাষ্ট্রের শর্তাদি হিসাবে প্রকাশ করতে হবে

জিপিএল হ'ল সাধারণ ব্যবহারের জন্য প্রথম কপিলিফ্ট লাইসেন্স, যার অর্থ যে উত্পন্ন কাজগুলি কেবল একই লাইসেন্সের শর্তে বিতরণ করা যেতে পারে।

...

জিপিএল হ'ল সাধারণ ব্যবহারের জন্য প্রথম কপিলিফ্ট লাইসেন্স, যার অর্থ যে উত্পন্ন কাজগুলি কেবল একই লাইসেন্সের শর্তে বিতরণ করা যেতে পারে।

আমার পরামর্শ হ'ল জিএনইউ জিপিএল ভি 3 লাইসেন্সের অধীনে প্রকাশ করা কারণ এটি আপনাকে আপনার কাজের উপর পর্যাপ্ত মালিকানার অধিকার দেয় এবং অন্যদের এটি বাণিজ্যিক এবং উন্মুক্ত প্রকল্পগুলিতে সম্ভাব্যরূপে ব্যবহার করার অনুমতি দেয়। মনে রাখবেন, যদিও, "ধার করা" প্রকল্পগুলির লাইসেন্সগুলি অবশ্যই সামঞ্জস্যপূর্ণ হতে পারে


গিট এবং গিথুব সহ ​​সেরা অনুশীলনের জন্য, git submoduleআপনার নিজের লাইব্রেরিতে অন্যান্য প্রকল্পগুলি অন্তর্ভুক্ত করার জন্য ব্যবহার করুন । আপনি নিজের হিসাবে কাজটি পুনরায় স্বীকার না করায় সরাসরি ফাইলগুলি অন্তর্ভুক্ত করার চেয়ে এটি ভাল।

$ git submodule add git://github.com/cakephp/cakephp.git vendor/cake-php
$ git submodule update --init

গিট সাবমডিউল এছাড়াও এমন কিছু যা আমি অস্পষ্ট। উদাহরণস্বরূপ, আমার প্রকল্পটি jQuery এবং jQuery UI- ব্যবহার করে আমি গিটহাবের উত্সটি অনেকগুলি ফাইল এবং ফোল্ডারে বিভক্ত হওয়ায় আমি কীভাবে এটিকে উপ-মডেল হিসাবে অন্তর্ভুক্ত করতে পারি। এইচটিএমএলপুরিফায়ারের সাথে আমারও একই জিনিস ছিল যা আমিও ব্যবহার করছি। আমার যে ফাইলগুলি দরকার সেগুলি একটি সাবফোল্ডারে রয়েছে তবে গিট সাবমোডিয়ালের সাথে মনে হয় আমার কাছে অতিরিক্ত অতিরিক্ত জিনিসপত্রের সংযোজন ছাড়া আমার আর কোনও উপায় নেই যা আমার প্রযোজনা অপ্রয়োজনে ছাড়বে, বা আপনি যেমন বলছেন অন্য কারও কাজ কমিট করার জন্য আমার নিজের!

লাইসেন্সিংয়ের প্রকৃতি যেমন, আপনি আলাদা করতে পারবেন না এবং কেবলমাত্র নিজেরাই ফাইলগুলি অন্তর্ভুক্ত করতে পারবেন না। প্যাকেজড হওয়ায় আপনার পুরো প্রকল্পটি অন্তর্ভুক্ত করা উচিত। git submodule add git://github.com/jquery/jquery.git public/vendor/jquery
অ্যাডলাউসন

অন্যরা যদিও এটি করছেন বলে মনে হয় না: ওয়ার্ডপ্রেস নিন, তারা মনে করেন যে তারা কেবল jQuery থেকে প্রয়োজনীয় মিনিফাইড

1
ওয়ার্ডপ্রেস সংস্করণ নিয়ন্ত্রণের জন্য এসভিএন ব্যবহার করে। তাদের গিথুব সংগ্রহশালাটি কেবল একটি আয়না। আমি যতদূর জানি, এসভিএন-তে কোনও "সাব-মডিউল" সক্ষমতা নেই, তাই এটি পুনর্বিবেচনা করা ছাড়া তাদের আর কোনও বিকল্প ছিল না। অন্য নোটে, ওয়ার্ডপ্রেসকে সেরা অনুশীলনের উদাহরণ হিসাবে গ্রহণ করবেন না
অ্যাডলাউসন

আমি যদি কিছু মিস করি তবে jQuery এর ক্ষেত্রে এটি করার উপায় বলে মনে হয় না। তাদের রেপো github.com/jquery/jquery এ একবার দেখুন , এটি কেবলমাত্র শত শত স্বতন্ত্র .js ফাইল এবং একটি বিল্ড স্ক্রিপ্ট- তাই আমি কেবল jquery.com থেকে একটি অনুলিপি ডাউনলোড না করে নিজেই প্রতিশ্রুতি না দিয়ে এটিকে আমার প্রকল্পে অন্তর্ভুক্ত করতে পারি না , না আমি ভুল?

0

এরিক এস রেমন্ডের এই গাইডটি দেখুন (বইটির বাকী অংশটিও পড়ার মতো)

ব্যক্তিগতভাবে, আমি এটি নিয়ে খুব বেশি চিন্তা করব না - আপনি সরাসরি এ থেকে অর্থ উপার্জন করতে যাচ্ছেন না, এবং অন্য কেউও নেই, কারণ ইতিমধ্যে দুর্দান্ত নিখরচায় সাধারণ-উদ্দেশ্য সিএমএস প্রচুর পরিমাণে রয়েছে। আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি সবচেয়ে বেশি উদার লাইসেন্স (এমআইটি বা বিএসডি) দিয়ে যেতে পারেন, যদি না আপনি ভাইরাল লাইসেন্সের (সাধারণত জিপিএল বা এর বিভিন্ন) অধীনে থাকা কোডটি ধার না করেন, সেই ক্ষেত্রে আপনাকে সেই লাইসেন্সটিতে একরকম বা অন্য কোনও পথে বাধ্য করা হয়।

আপনি যে লাইব্রেরি এবং স্নিপেট ব্যবহার করছেন তার সমস্ত লাইসেন্স সাবধানে পড়তে ভুলবেন না; আপনাকে কোডটি পুনরায় বিতরণ এবং সংশোধন করার অনুমতি দেওয়া হচ্ছে কিনা এবং আপনার কোনও উদ্ভূত কাজগুলিতে এগুলি অন্তর্ভুক্ত করার দরকার আছে কিনা তা তাদের জানিয়ে দেওয়া উচিত (বেশিরভাগ লাইসেন্সের এটি প্রয়োজন হয়, এমনকি তাদের জন্যও না, অ্যাট্রিবিউশনটি আপনাকে ধন্যবাদ জানাতে সবচেয়ে কম কাজ করতে পারে তাদের কাজের জন্য মূল লেখক)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.