গুগল অ্যাপ ইঞ্জিনে জাভা বনাম পাইথন নির্বাচন করা


161

বর্তমানে গুগল অ্যাপ ইঞ্জিন পাইথন এবং জাভা উভয়কেই সমর্থন করে। জাভা সমর্থন কম পরিপক্ক। যাইহোক, জাভাতে গ্রন্থাগারগুলির একটি দীর্ঘ তালিকা রয়েছে এবং বিশেষত জাভা বাইটকোডের জন্য কোডটি লিখতে ব্যবহৃত ভাষা নির্বিশেষে সমর্থন রয়েছে বলে মনে হয়। কোন ভাষা আরও ভাল কর্মক্ষমতা এবং আরও শক্তি দেবে? দয়া করে উপদেশ দাও. ধন্যবাদ!

সম্পাদনা করুন: http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine?pli=1

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


এখন গুগল অ্যাপ ইঞ্জিন গো (পরীক্ষামূলক) সমর্থন করছে । এ সম্পর্কে আপনার কড়া কথাগুলি কী?
বেনিয়ামিন ক্রাউজিয়ার

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

উত্তর:


123

আমি পক্ষপাতদুষ্ট (জাভায় পাইথন বিশেষজ্ঞ হয়েও বেশ মরিচা হয়ে উঠছি) তবে আমি মনে করি জিএই-র পাইথন রানটাইম জাভা রানটাইমের চেয়ে বর্তমানে আরও উন্নত এবং উন্নত - পূর্বেরটির বিকাশ ও পরিপক্ক হওয়ার জন্য আরও এক বছর অতিবাহিত হয়েছে, সর্বোপরি ।

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

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

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

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

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

সর্বশেষে তবে সর্বনিম্ন নয়: মনে রাখবেন যে আপনার অ্যাপের বিভিন্ন সংস্করণ (একই ডেটাস্টোর ব্যবহার করে) থাকতে পারে যার কয়েকটি পাইথন রানটাইম দ্বারা প্রয়োগ করা হয়, কিছু জাভা রানটাইম সহ, এবং আপনি "ডিফল্ট / সক্রিয়" থেকে পৃথক সংস্করণগুলি অ্যাক্সেস করতে পারেন "সুস্পষ্ট URL সহ একটি। সুতরাং আপনার কাছে পাইথন এবং জাভা কোড উভয়ই থাকতে পারে (আপনার অ্যাপের বিভিন্ন সংস্করণে) একই ডেটা স্টোরটি ব্যবহার এবং সংশোধন করতে পারে, আপনাকে আরও নমনীয়তা দেয় (যদিও কেবলমাত্র একজনেরই foobar.appspot.com এর মতো "দুর্দান্ত" ইউআরএল থাকবে - যা সম্ভবত ব্রাউজারগুলিতে ইন্টারেক্টিভ ব্যবহারকারীদের অ্যাক্সেসের জন্য গুরুত্বপূর্ণ, আমি কল্পনা করি ;-)।


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

9
জিডব্লিউটি-র পাইথোনিক বিকল্প হিসাবে পাইজামাস ( পাইজস.আর.অর্গ ) রয়েছে - এটি পাইথন কোডটি নেবে এবং এটি জাভাস্ক্রিপ্টে সংকলন করবে, যেমন জিডাব্লুটিটি জাভা কোডের জন্য করে।
ডেভ কির্বি

7
একটি "5 বছর পরে" দৃষ্টিকোণ দিতে। জাভা ডেভেলপার হিসাবে আমার মনে হচ্ছে জিএই পুরানো স্ট্যাক চালাচ্ছে। আপনি জাভা 8 সমর্থন পাবেন না , ( তারা সার্ভালেট এপিআই 2.5 এর সাথে জাভা 6 এবং সেই সাথে লেগ্যাসি জেটি 6 ধারক চালাচ্ছেন ), জিএই- তে সমস্ত জাভা সাপোর্ট 2010 সালে এখনও আটকে আছে While যদিও আমি জিএই সাবলীলতা এবং গুগল পাওয়ারফুল সার্ভিসগুলিকে ভালবাসি, জাভা এর স্ট্যাক আপগ্রেড না করা পর্যন্ত আমি GAE এর জন্য সুপারিশ করতে পারি না।
অ্যান্টনি অ্যাকসিওলি

72

পাইথন এবং জাভা সম্পাদনা পরিবর্তনের জন্য এই অ্যাপ্লিকেশনটি দেখুন:

http://gaejava.appspot.com/ (সম্পাদনা: ক্ষমা, লিঙ্কটি এখন ভেঙে গেছে But

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


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

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

1
আপনার অ্যাপ্লিকেশন, এটি অভ্যন্তরীণ সার্ভার ত্রুটি নিক্ষেপ করছে।
tomdemuyt

1
ধন্যবাদ টম দুঃখের সাথে আমার অ্যাপ নয়। লিঙ্কযুক্ত হতে পারে এমন কাউকে মেল করেছেন।
রিচার্ড ওয়াটসন

1
আমি দেখতে চাই যে আপত্তিজনকভাবে এই পরীক্ষায় কী তুলনা করা হয়
মোশে শাহাম

18

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

উপলভ্য লাইব্রেরিগুলির সাথে সম্পর্কিত, আপনি দেখতে পাবেন যে বিস্তৃত পাইথন রানটাইম লাইব্রেরির অনেকাংশ বাক্সের বাইরে কাজ করে (জাভা হিসাবে)) জনপ্রিয় জ্যাঙ্গো ওয়েব কাঠামো ( http://www.djangoproject.com/ ) এছাড়াও অ্যাপইঞ্জিনে সমর্থিত।

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


আপনাকে জুডি 2 কে ধন্যবাদ! পাওয়ার দ্বারা আমি বোঝাতে চাই বেশি কিছু করতে পারি এবং প্রসারিত করা সহজ।
ভিয়েতনাম

15

জুন ২০১৩: গুগল ইঞ্জিনিয়ারের এই ভিডিওটি খুব ভাল উত্তর:

http://www.youtube.com/watch?v=tLriM2krw2E

TLDR; হল:

  • আপনি এবং আপনার দল যে ভাষাটির সাথে সর্বাধিক উত্পাদনশীল তা চয়ন করুন
  • আপনি যদি উত্পাদনের জন্য কিছু তৈরি করতে চান: জাভা বা পাইথন (যান না)
  • আপনার যদি একটি বড় দল এবং একটি জটিল কোড বেস থাকে: জাভা (স্ট্যাটিক কোড বিশ্লেষণ এবং রিফ্যাক্টরিংয়ের কারণে)
  • ছোট দলগুলি যা পুনরাবৃত্তি করে: পাইথন (যদিও জাভাও ঠিক আছে)

9

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

জাভার জন্য , স্ট্যান্ডার্ড পদ্ধতিটি জেডিও বা জেপিএ ব্যবহার করা। এগুলি বহনযোগ্যতার জন্য দুর্দান্ত তবে ডেটাস্টোরের পক্ষে খুব ভাল নয়।

একটি নিম্ন-স্তরের এপিআই উপলব্ধ তবে এটি প্রতিদিন ব্যবহারের জন্য খুব নিম্ন স্তরের - এটি তৃতীয় পক্ষের গ্রন্থাগারগুলি তৈরি করার জন্য আরও উপযুক্ত।

পাইথনের জন্য একটি এপিআই রয়েছে যা ডেটাস্টোরটিতে সহজেই কিন্তু শক্তিশালী অ্যাক্সেস সহ অ্যাপ্লিকেশনগুলি সরবরাহ করতে বিশেষভাবে ডিজাইন করা হয়েছে। এটি পোর্টেবল নয় তবে এটি আপনাকে জিএইতে লক করে রাখে তা দুর্দান্ত।

ভাগ্যক্রমে, উভয় ভাষার জন্য তালিকাভুক্ত দুর্বলতার জন্য সমাধানগুলি তৈরি করা হচ্ছে।

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

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

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

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


7

আমি GAE এর জন্য জাভা জোরালোভাবে সুপারিশ করছি এবং এর কারণ:

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

আমি এখনই বিকাশে জাভা / জিএই ব্যবহার করছি।


1
@ পল - জেডিও যদি উপায় না হয় তবে আপনি জিএইএতে জাভা ব্যবহার করে দৃ pers়তা পরিচালনা করার সর্বোত্তম উপায়ের (বা লিঙ্কগুলি দিতে) সুপারিশ করতে পারেন?
চিহ্নিত করুন

1
@ মার্ক, দেরি করার জন্য আমি দুঃখিত আমি মনে করি কোড জিইটিও / পি / ওজেক্টিফাই-অ্যাপেনজিন এখনকার জন্য সেরা পছন্দ।
পল

7
# 2 এবং # 3 পয়েন্টগুলিতে সুস্পষ্ট মিথ্যাচারের জন্য -1 এবং # 4 এর জন্য কোনও ধারণা নেই।
ট্রিপটিচ

@ ট্রিপটিচ, আমাকে জানতে দিন পাইথন / জিএই এর এক্সএসএলটি প্রসেসরের নাম কী? আর ম্যাকচে / পাইথন / জিএই এর জন্য CAS (putIfUntouched) অপারেশনের সমতুল্য কী?
পল

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

6

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

সম্পাদনা: আমি দেখতে পাচ্ছি আপনি এমন একটি তালিকা পেয়েছেন

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

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


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

6

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


5

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

আমি সাধারণত এই ধরণের দ্বিধাদ্বন্দ্বের মধ্যে যেমন করি, আমি আমার সিদ্ধান্তটিকে সমর্থন করার জন্য সংখ্যার সন্ধান করি। আমি বহু কারণে পাইথনের সাথে যাওয়ার সিদ্ধান্ত নিয়েছিলাম, তবে আমার ক্ষেত্রে একটি প্লট ছিল যা ছিল টিপিং পয়েন্ট। আপনি যদি সেপ্টেম্বর 2014 পর্যন্ত গিটহাবে "গুগল অ্যাপ ইঞ্জিন" অনুসন্ধান করেন , আপনি নিম্নলিখিত চিত্রটি পাবেন:

জিএইই ভাষার পরিসংখ্যান

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


3

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

আমি এই বিষয়টিতে একসাথে একটি পোস্ট রেখেছি ( http://distractable.net/coding/google-appengine-java-vs-python-performance-compistance/ ) এবং আমি সমস্যার আশপাশে কাজ করার একটি উপায় খুঁজে প্রত্যাশা করছি, তবে যদি না আমি মনে করি আমি শীতকালীন জাভা অনুরোধগুলির প্রভাব কম না হওয়া পর্যন্ত আমি পাইথন + জ্যাঙ্গো সংমিশ্রণে ফিরে যাব।


3

পাইথন ব্যবহারকারীদের তুলনায় জাভা লোকেরা অ্যাপেঞ্জিন সম্পর্কে কতটা অভিযোগ শুনি তার উপর ভিত্তি করে আমি বলব পাইথন ব্যবহারে অনেক কম চাপযুক্ত।


7
শুনেছি ফোর্ডের মালিকরা কোনিগসেগ মালিকদের চেয়ে অনেক বেশি তাদের গাড়ি নিয়ে অভিযোগ করছেন। কেন হতে পারে?
অ্যাক্সারিড্যাক্স

2

আনলাডেন গেলা জাতীয় প্রকল্পও রয়েছে যা গুগলের মালিকানাধীন না হলে দৃশ্যত গুগল-অর্থায়িত- তারা পাইথন ২.6.১ বাইটকোডের জন্য একটি এলএলভিএম ভিত্তিক ব্যাকএন্ড বাস্তবায়নের চেষ্টা করছে, যাতে তারা একটি জেআইটি এবং বিভিন্ন সুন্দর নেটিভ কোড / জিসি / মাল্টি-কোর অপটিমাইজেশন ব্যবহার করতে পারে। (চমৎকার উক্তি: "আমরা গত 30 বছরের গবেষণার যতটা সম্ভব ব্যবহারের পরিবর্তে কোনও মূল কাজ না করার আকাঙ্ক্ষা করি।") তারা সিপিথনে 5x স্পিড-আপ খুঁজছে।

অবশ্যই এটি আপনার তাত্ক্ষণিক প্রশ্নের উত্তর দেয় না, তবে ভবিষ্যতে একটি "ব্যবধানের সমাপ্তি" (যদি থাকে) এর দিকে নির্দেশ করে (আশা করি)।


1
আনলাডেন গ্রাস এখন একটি মৃত প্রকল্প এবং শেষ প্রতিশ্রুতি এক বছরেরও বেশি পুরানো
tshpang

2

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

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

গতকাল আমি পাইগনকে ইনলাইন সি বা এমনকি এসেম্বলির (কোরপি দেখুন) সরঞ্জামগুলি পেয়েছি, আপনি এর চেয়ে আরও শক্তিশালী পেতে পারেন না।

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

পাইথনের সাহায্যে আপনি সি / সি ++, জাভা,। নেট এবং আরও অনেক লাইব্রেরিতে প্রায় শূন্য অতিরিক্ত কোডিং সহ অ্যাক্সেস পেতে পারেন যা আপনাকে এমন একটি ভাষা প্রদান করে যা কোডিংকে ছোট করে তোলে, সরল করে তোলে এবং সুন্দর করে তোলে। এটি একটি খুব লোভনীয় ভাষা।


প্রশ্নটি GAE এর জাভা বনাম পাইথন সম্পর্কে, যার অনেকগুলি বিধিনিষেধ রয়েছে। অতএব, আপনার যুক্তি প্রয়োগযোগ্য নয়।
দানিয়ার

আমি @ দানিয়ারের সাথে একমত, এই উত্তরটি সামান্য (বা সম্ভবত পুরোপুরি) বীট থেকে দূরে রয়েছে তবে আমি উত্তরটি পছন্দ করি এবং এটিই আমি খুঁজছিলাম। এই জ্ঞান ভাগ করে নেওয়ার জন্য কিলন ধন্যবাদ। এটি ভুল জায়গা হতে পারে তবে আপনি অবশ্যই কিছু জ্ঞান ভাগ করে নিলেন। এর জন্য +1 এবং কুদোস।
zeFree

1

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


1

আপনার বিবেচনার জন্য যে ফ্রেমওয়ার্কগুলি আপনি ব্যবহারের উদ্দেশ্যে যেতে চান তা হ'ল একটিকে বিবেচনা করা। জাভা পক্ষের সমস্ত ফ্রেমওয়ার্কগুলি অ্যাপ ইঞ্জিনে চলমান অ্যাপ্লিকেশনগুলির পক্ষে ভাল নয়, যা প্রথাগত জাভা অ্যাপ্লিকেশন সার্ভারগুলির চেয়ে কিছুটা আলাদা।

অ্যাপ্লিকেশন শুরুর সময়টি বিবেচনার জন্য একটি বিষয়। Traditionalতিহ্যবাহী জাভা ওয়েব অ্যাপ্লিকেশনগুলির সাথে আপনার সত্যিকারের এটি সম্পর্কে ভাবার দরকার নেই। অ্যাপ্লিকেশন শুরু হয় এবং তারপরে এটি কেবল চালানো হয়। স্টার্টআপটি 5 সেকেন্ড বা কয়েক মিনিট সময় নেয় কিনা তা আসলেই আসে যায় না। অ্যাপ ইঞ্জিনের সাহায্যে আপনি এমন পরিস্থিতিতে শেষ হতে পারেন যেখানে কোনও আবেদন আসে তখনই অ্যাপ্লিকেশন শুরু হয় This এর অর্থ ব্যবহারকারী আপনার অ্যাপ্লিকেশনটি বুট আপ হওয়ার সময় অপেক্ষা করছে। সংরক্ষিত দৃষ্টান্তগুলির মতো নতুন GAE বৈশিষ্ট্যগুলি এখানে সহায়তা করে তবে প্রথমে চেক করুন।

আর একটি বিষয় হ'ল জাভাতে বিভিন্ন সীমাবদ্ধতা জিএসই psoes। আপনি কী ক্লাসগুলি ব্যবহার করতে পারেন বা থ্রেডগুলি অনুমোদিত নয় বা আপনি স্থানীয় ফাইল সিস্টেমটি অ্যাক্সেস করতে পারবেন না এই সীমাবদ্ধতায় সমস্ত ফ্রেমওয়ার্কগুলি সন্তুষ্ট নয়। এই সমস্যাগুলি সম্ভবত GAE সামঞ্জস্যতা সম্পর্কে গুগল করে খুঁজে পাওয়া সহজ।

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

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

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

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