কী ধরণের অ্যাপ্লিকেশনগুলির জন্য পাইথন একটি খারাপ পছন্দ? [বন্ধ]


21

আমি কেবল পাইথন শিখতে শুরু করেছি এবং আমি ভাষাটি সম্পর্কে আরও কিছু প্রসঙ্গ পেতে চাই।

আমি বুঝতে পারি যে, অনেক ক্ষেত্রে পাইথন সি বা সি ++ এর সাথে তুলনামূলক একটি ধীর ভাষা। সুতরাং, পাইথন সম্ভবত অ্যাপ্লিকেশনগুলির পক্ষে সেরা পছন্দ নয় যা যত তাড়াতাড়ি সম্ভব চালানো দরকার।

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


8
দুর্দান্ত সাধারণ উদ্দেশ্যে ভাষা বলে কোনও জিনিস নেই। প্রতি পাঁচ বছর বা তার পরে, একটি নতুন পুরানোটিকে প্রতিস্থাপন করে যা কেবল কুলুঙ্গির বাজারগুলিতে টিকে থাকে। লিস্প, ফোর্টরান, পাস্কাল, বেসিক, আদা, পার্ল ...
মউভিচিয়েল

3
@ মউভিচিয়েল: পাস্কাল একটি কুলুঙ্গি ভাষা? ঠিক আছে, বোরল্যান্ড / কোডগিয়ার / এম্বারকাডেরো আইডিইয়ের সাথে মিলে এর নামটি ডেল্ফিতে পরিবর্তিত হয়েছিল, তবে ডেলফি এখনও (ভিত্তিক) পাস্কাল এবং যদিও এটি বাজারে হারিয়েছে, আমি একে একে একে একে একে একে একে একে একে একে একে একে একে একে ঠিক আলাদা করে দেইনি call এবং উভয়ই বিষয়টির জন্য বেসিক নয়। ভিজ্যুয়াল বেসিক এখনও বেসিক। ডেল্ফি এবং ভিজ্যুয়াল বেসিক উভয়ই অনেক
সংস্থায়

7
"পাইথন হ'ল সি বা সি ++ এর তুলনায় একটি ধীর ভাষা"। আপনার ব্যবহৃত নির্দিষ্ট মানদণ্ডের সাহায্যে এটি ব্যাক আপ করা উচিত। কয়েকটি ক্ষেত্রে (আই / ও বাউন্ড প্রোগ্রাম যা প্রচুর সিস্টেম কল করে) পাইথন সি এর চেয়ে দ্রুততর কারণ এটি সি লাইব্রেরির চারপাশে কেবল একটি মোড়ক।
এস .লট

@ এস.লট ট্রু, এবং পাইপি মাঝে মাঝে জেভিএম বা এমনকি সি / সি ++ এর কাছে প্রতিদ্বন্দ্বিতা করতে পারে
ইয়াতী সাগাদ

আমি যখন বিশ্ববিদ্যালয়ে পড়ি তখন পাস্কাল পছন্দের পাঠদানের ভাষা হতেন। তারপরে কয়েক দশক ধরে উড়ে গেল এবং এখন মনে হচ্ছে এটি তার জাভা। আমি বেশ কয়েকটি ভাষা পেশাদারভাবে (আধা ডজন বা তার বেশি) কোড করি তবে মজাদার জন্য এখনও ডেল্ফি কোড করে।
মাওগ

উত্তর:


22

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


… যে পর্যন্ত কেউ আরডুইনোর একটি পাইথন বন্দর তৈরি না করে। অপেক্ষা কর!
স্পোকাইক

5
@ স্পাইকে এই লিঙ্কটি আসলে কম্পিউটারে অজগর চালানোর জন্য এবং কেবল সিরিয়ালিভাবে আরডুইনোতে যোগাযোগ করার জন্য।
আরডুইনো

1
@ বাসারত অলি: দাবি অস্বীকার - আমি মজার মন্তব্য করে আমার মন্তব্য লিখেছি। ;-)
স্পোকাইক

14

যে দুটি জায়গাগুলি মনে পড়বে তা হ'ল এমন জিনিসগুলির জন্য যা অনেকগুলি স্বচ্ছন্দ প্রয়োজন, যার জন্য আমি এরলং ব্যবহার করব। বা ভারী দায়িত্ব সংখ্যার গণনা, যা আমি সম্ভবত ফোর্টরান ব্যবহার করার চেষ্টা করব।


1
ফোরট্রান কি এখনও সংখ্যার
গণনায়

1
আপনি জানেন আমি জানি না। এটি এমন একটি অঞ্চল নয় যা আমার অনেক বেশি অভিজ্ঞতা আছে। তবে আমি জানি যে দুর্গের লোকেরা তাদের সরঞ্জামগুলি সত্যই দ্রুত এগিয়ে যেতে 30+ বছর ব্যয় করেছে।
জাচারি কে

@ সারদাথ্রিয়ন - এটি বলা শক্ত। শুধুমাত্র প্রাকৃতিক, আপনি বুঝতে পারেন। তবে, কয়েক মাস আগে, ইন্টেল ফোর্টরান খ্যাতির মিঃ লিওনেল জানিয়েছিলেন যে তাদের গৌরব রেখাগুলি তাদের বিকাশের লাইনের প্রতিটি পণ্যকে আউটসেল করে (যা এতটা সংকীর্ণ নয়)।
রোক

@ ইডিগাস: প্রকৃতপক্ষে, আমি জানি যে ফোর্টরান ব্যাপকভাবে ব্যবহৃত হয় তবে এটি লিগ্যাসি কোড এবং অপ্টিমাইজেশন সীমাবদ্ধতার কারণে নয়। সম্ভবত আমার এটি প্রশ্ন হিসাবে জিজ্ঞাসা করা উচিত ...
সারদাথ্রিয়ন - মনিকা

এছাড়াও মনে রাখবেন যে সংখ্যাগরিষ্ঠ গণনা করেন এমন অনেক লোক ফোর্টরানকে সত্যই জানেন এবং এটি তাদের পছন্দের সরঞ্জাম tool সুতরাং যখন তাদের এই ধরণের কাজ করতে হবে তখন তারা ফোর্টরানের উদ্দেশ্যে পৌঁছে যাবে।
জাচারি কে

8

পাইথন যেহেতু একটি গতিময় টাইপযুক্ত ভাষা, তাই সংকলন-সময় পরীক্ষা না করে, বৃহত্তর পাইথন প্রকল্পটির রিফ্যাক্টরিংয়ের বিশাল ইউনিট পরীক্ষা করা কঠিন।

সুতরাং আপনার যদি একটি বৃহত প্রকল্প রয়েছে যা দীর্ঘ সময়ের জন্য বজায় রাখা এবং সংশোধন করা দরকার এবং আপনার টিম সব কিছুর জন্য স্বয়ংক্রিয় পরীক্ষা তৈরি করতে প্রতিশ্রুতিবদ্ধ নয়, তবে আপনি জাভা বা সি # ব্যবহার করতে আরও ভাল করতে পারেন।


17
ইউনিট পরীক্ষা ছাড়াই যে কোনও বৃহত প্রকল্পের রিফ্যাক্টরিং খুব শক্ত।
সারদাথ্রিয়ন - মনিকা

9
সত্য, তবে প্রকারের সুরক্ষা ছাড়াই অনেক বেশি শক্ত।
এরিক উইলসন

3
@ এরিক উইলসন - তারপরেও, শক্তিশালী টাইপিং আপনাকে সুরক্ষার একটি ভুল ধারণা দিতে পারে ... এটি সংকলন করে, শিপ করে!
মার্ক বুথ

2
এটি প্রশ্নের বিষয়টিতে 100% না হলেও এখনও একটি বৈধ পয়েন্ট হতে পারে। টুলিং সাপোর্ট বিশেষত জাভা বা সি # এর মতো ভাষার তুলনায় গতিশীল টাইপ করা ভাষার জন্য রিফ্যাক্টরিংয়ের অভাব রয়েছে। বড় আকারের পাইথন প্রকল্পগুলিতে কেবল স্টাফের নামকরণ করা একান্ত ব্যায়াম হতে পারে।
অলিভারস

পাইথনের জন্য কি আলাদা রানটাইম বা ভিএম প্রয়োজন হয়, বা এটি একক স্ব-অন্তর্ভুক্ত এক্সিকিউটেবল উত্পাদন করতে পারে?
জিম ইন টেক্সাস

2

যদি মূল ফোকাস উইন্ডোজ জিইউআই বিকাশ হয় তবে আমি সিপিথনের বিরুদ্ধে সুপারিশ করব কারণ ভাল ফর্ম ডিজাইনারের অভাব রয়েছে (নেট ব্যবহারের সাথে তুলনায়)।

তবে, আয়রন পাইথন চালু আছে। নেট এবং আপনি ফর্ম ডিজাইনারদের সাথে বেছে নিতে দুটি আইডিই রয়েছেন: ভিজ্যুয়াল স্টুডিও এবং শার্পডেভলভ। বাস্তবে ভিজ্যুয়াল স্টুডিওর জন্য পাইথন সরঞ্জামগুলি সিপিথনের পাশাপাশি আয়রন পাইথনের জন্যও ব্যবহার করা যেতে পারে, এটি এখনও খুব ঝরঝরে যদিও আমি এখনও চেষ্টা করে দেখিনি ...


2

এটি "খারাপ পছন্দ" বলতে কী বোঝায় তার উপর এটি নির্ভর করে।

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

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


2

এটির মতামত ক্ষমতা এবং বিস্তৃত বিভিন্ন সমর্থন লাইব্রেরির কারণে এটি দ্রুত কোনও স্ক্রিপ্ট করার জন্য আদর্শ।

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


0

ঠিক আছে, ঠিক আপনার মতোই আমিও পাইথন দিয়ে শুরু করছি। তবে আমার জন্য মেশিন লার্নিং এবং ডেটা সায়েন্সের প্রসঙ্গে।

আমি সবেমাত্র জাভা 8 এবং এর নতুন স্ট্রিম ওরিয়েন্টেড লাইব্রেরিতে সমস্ত নতুন জ্ঞান অর্জন করেছি।

আমি নতুন জাভা 8 স্ট্রিম লাইব্রেরির তরল অনুভূতিটি সত্যিই পছন্দ করেছি এবং অ্যাপাচি স্পার্ক লাইব্রেরিগুলির কারণে আমি কতটা কাছাকাছি অনুভব করেছি। আমি যখন পাইথনে গিয়েছিলাম তখন আমি একই এবং আরও অনেক কিছু আশা করেছিলাম।

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

তবে ভাষা থেকে শিখতে কতটা সহজ হতে চলেছে তা নিয়ে আমার প্রথম থেকে বড় প্রত্যাশা ছিল না। আমি ঠিক বলেছি: বেমানান, স্বজ্ঞাত, শেখা কঠিন। তবে জাভা মতো সব কিছুতেই বেশ ভাল থাকার অভিজ্ঞতা আমার ছিল।

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