সবচেয়ে বড় জিডব্লিউটি সমস্যাগুলি? [বন্ধ]


189

আমি একটি প্রকল্পের শুরুতে / মাঝখানে আছি যা আমরা GWT ব্যবহার করে প্রয়োগ করতে বেছে নিয়েছি। কেউ কি GWT (এবং GWT-EXT) ব্যবহার করে কোনও বড় ধরনের সমস্যার মুখোমুখি হয়েছেন যেগুলি কাটিয়ে উঠতে পারছেন না? পারফরম্যান্সের দৃষ্টিকোণ থেকে কীভাবে?

আমরা দেখেছি / শুনেছি এমন কয়েকটি জিনিস এর মধ্যে রয়েছে:

  • গুগল সামগ্রী সূচী করতে সক্ষম হচ্ছে না
  • সিএসএস এবং সাধারণভাবে স্টাইলিং কিছুটা দুর্বল বলে মনে হচ্ছে

পাশাপাশি এই আইটেমগুলিতে কোনও অতিরিক্ত প্রতিক্রিয়া খুঁজছেন। ধন্যবাদ!


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

উত্তর:


231

আমি এই বলে শুরু করব যে আমি একটি বিশাল জিডব্লিউটি অনুরাগী, তবে হ্যাঁ অনেকগুলি ক্ষতি আছে, তবে বেশিরভাগ ক্ষেত্রে যদি আমরা পেরেছি না:

সমস্যা: দীর্ঘ সময় সংকলন করুন, আপনার প্রকল্পের আকার বাড়ার সাথে সাথে এটি সংকলন করতে সময় লাগে। আমি 20 মিনিটের সংকলনের রিপোর্ট শুনেছি, তবে আমার গড়ে প্রায় 1 মিনিট।

সমাধান: আপনার কোডটি পৃথক মডিউলগুলিতে বিভক্ত করুন, এবং পিঁপড়াটিকে কেবল পরিবর্তন করা হলে এটি তৈরি করতে বলুন। এছাড়াও বিকাশকালে, আপনি কেবলমাত্র একটি ব্রাউজারের জন্য বিল্ডিং করে কম্পাইল বারগুলি ব্যাপকভাবে গতিতে পারেন। এটি আপনার .gwt.xML ফাইলে রেখে আপনি এটি করতে পারেন:

<set-property name="user.agent" value="gecko1_8" />

যেখানে গেকো 1_8 হ'ল ফায়ারফক্স 2+, অর্থাত্ 6 আইই ইত্যাদি is


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

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

আপডেট: GWT 2.0+ এর সাথে এটি আর সমস্যা নয়, কারণ আপনি নতুন 'বিকাশ মোড' ব্যবহার করেন। এটির মূলত অর্থ হল আপনি আপনার পছন্দসই ব্রাউজারে সরাসরি কোড চালাতে পারেন, যাতে গতির কোনও ক্ষতি হয় না, আপনি এটি ফায়ারব্যাগ / পরীক্ষা করতে পারেন ইত্যাদি ect

http://code.google.com/p/google-web-toolkit/wiki/UsingOOPHM


সমস্যা: জিডাব্লুটি কোডটি জাভা, এবং এইচটিএমএল পৃষ্ঠা রাখার জন্য আলাদা মানসিকতা রয়েছে যা একটি এইচটিএমএল ডিজাইন গ্রহণ এবং এটিকে আরও শক্ত করে জিডব্লুটিতে পরিণত করে

সমাধান: আবার আপনি এটিতে অভ্যস্ত হয়ে পড়েছেন, তবে দুর্ভাগ্যক্রমে কোনও জেএসপি পৃষ্ঠায় কোনও এইচটিএমএল ডিজাইনে রূপান্তর করার মতো কিছু করার চেয়ে কোনও HTML ডিজাইনকে GWT ডিজাইনে রূপান্তর করা সর্বদা ধীর হতে চলেছে।


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

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


সমস্যা: জিডব্লিউটি হ'ল স্ল্যাজহ্যামার যা জেকারি বা কেবল সরল জাভাস্ক্রিপ্টের মতো কোনও কিছুর তুলনায়। এটি কেবল একটি জেএস ফাইল অন্তর্ভুক্ত না করে এটি ঘটতে অনেক বেশি সেটআপ লাগে।

সমাধান: ছোট, সাধারণ কাজের জন্য jquery এর মতো লাইব্রেরি ব্যবহার করুন যা এটি উপযুক্ত। আপনি যখন এজেএক্সে সত্যিকারের জটিল কিছু তৈরি করতে চান বা যেখানে আপনাকে আরপিসি মেকানিজমের মাধ্যমে আপনার ডেটা পিছন পিছন যেতে হবে তখন জিডব্লুটি ব্যবহার করুন।


সমস্যা: কখনও কখনও আপনার জিডব্লিউটি পৃষ্ঠাটি পপুলেট করার জন্য, পৃষ্ঠাটি প্রথম লোড হওয়ার পরে আপনাকে একটি সার্ভার কল করতে হবে। আপনার প্রয়োজনীয় ডেটা আনার সময় সেখানে বসে থাকা এবং লোডিং প্রতীকটি দেখার জন্য এটি ব্যবহারকারী বিরক্তিকর হতে পারে।

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

আপনার জিডব্লিউটি কলগুলি প্রাক-সিরিয়ালীকরণ করে পৃষ্ঠা লোডিং গতি বাড়িয়ে দিন


সিএসএস আমার উইজেটগুলি স্টাইলিংয়ে, বক্সের বাইরে, কাস্টম বা অন্যথায় কখনও কোন সমস্যায় পড়েনি, তাই আমি জানি না যে আপনি কী ঘটছেন তার অর্থ কী?

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


1
আমরা বেশ কয়েকটি ইস্যুতে চলে এসেছি যেখানে বিভিন্ন স্টাইল / পজিশনিং কমান্ডগুলি "নিতে" বলে মনে হয় না - স্টাইলগুলি যেখানে হওয়া উচিত ছিল সেগুলি ব্যবহার করা হচ্ছে না, বা কোনও উপাদানকে আকার 100% করার অনুরোধটিকে অগ্রাহ্য করে বলে মনে হচ্ছে। অনেকগুলি নিয়মিত সিএসএস চ্যালেঞ্জ - বেশিরভাগ ব্যবহারকারীর ত্রুটি সম্ভবত!
আগরতজকে

@ গার্টজকে হ্যাঁ এটি আপনার জন্য সিএসএস, এবং এর বেশিরভাগ ক্ষেত্রে জিডব্লিউটি-র কোনও সম্পর্ক নেই। এজন্য আমরা আমাদের জন্য এই জাতীয় জিনিসটি করার জন্য অত্যন্ত দক্ষ ডিজাইনার নিয়োগ করি। এটি 4 টি ভিন্ন ব্রাউজারে সরাসরি পাওয়া কখনও সহজ কাজ নয়।
rustyshelf

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

আমি 2.0 এর অপেক্ষায় রয়েছি কিন্তু জিডাব্লুটিটি স্লেজ হাতুড়ি হওয়ার সাথে আমার একমত হতে হবে না। যদি কেসটি না হয় তবে jQuery এবং জাভাস্ক্রিপ্ট সর্বোত্তম, একটি ক্লডজ। আমার বক্তব্যটি হ'ল আমি পুনরায় ব্যবহার না পেয়ে, আমি অনেকগুলি জিনিস কপি-পেস্ট করে শেষ করি (বলুন: 4 পৃষ্ঠাগুলির একটি পাঠ্য বাক্স যা প্রতিটি জায়গায় অভিন্ন আচরণ করে)। এটি আপনার পুরানো অ্যাপ্লিকেশনগুলি টস করা উচিত বলে নয়। আমি (প্রায়) কখনই কোনও বিদ্যমান এইচটিএমএল / জেএস অ্যাপ্লিকেশনটিতে সক্ষমতা যুক্ত করতে জিডব্লুটি ব্যবহার করব না। এছাড়াও সিএসএস রিসোর্সগুলি ইনকিউবেটারে রয়েছে এবং আমি তাদের পছন্দ করি: stackoverflow.com/questions/1066250/gwt-html-file-with-css/…
ক্রিস রুফালো 18

2
আপনি জিডাব্লুটিটি পুনরায় ব্যবহার করতে পারবেন ঠিক ততই আপনি জিকুয়েরিকে পুনরায় ব্যবহার করতে পারেন, আমি মনে করি এটি একটি কার্যকর যুক্তি নয়। তারা উভয়ই উত্তরাধিকার সমর্থন করে এবং তারপরে উভয়ই পুনরায় ব্যবহারের জন্য প্যাকেজ করা যেতে পারে (জিডাব্লুটিটির জন্য .jar ফাইল, জিকুয়েরির জন্য .js ফাইল)। আমি যেটাকে বলেছিলাম জিডাব্লুটিটি একটি স্লেজহ্যামার, আপনাকে এটি জাভাতে কোড করতে হবে, আপনাকে এটি সংকলন করতে হবে, আপনার আরও অনেকগুলি বিষয় পরিচালনা করতে হবে। আপনি যদি কোনও ইটের প্রাচীর ভাঙতে চান তবে আপনি স্লেজহ্যামারটি বেছে নিন। এটি একটি সমালোচনা নয় এটি একটি বৈধ পয়েন্ট। সঠিক কাজের জন্য সঠিক সরঞ্জাম।
rustyshelf

54

আমরা প্রায় 2 বছর ধরে gwt নিয়ে কাজ করছি। আমরা অনেক কিছু শিখেছি। আমরা যা মনে করি তা এখানে:

  1. তৃতীয় পক্ষের উইজেট গ্রন্থাগারগুলি বিশেষত gwt-ext ব্যবহার করবেন না। এটি আপনার ডিবাগিং, বিকাশ এবং রানটাইম পারফরম্যান্সকে হত্যা করবে। এটি কীভাবে হয় সে সম্পর্কে আপনার যদি প্রশ্ন থাকে তবে সরাসরি যোগাযোগ করুন।

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

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

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


আপনার উত্তর সম্পর্কিত একটি প্রশ্ন আমি স্ট্যাকওভারফ্লো . com/q/10025656/138585 এ খুললাম । আমি যদি আপনি কিছু পেতে পারেন প্রশংসা করব।
এলাদ

20

আমরা যে দুর্যোগগুলিতে প্রবেশ করেছি:

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

  • আপনার দলে সিএসএস জানে এমন কেউ নেই। আমার অভিজ্ঞতা থেকে, এটি কোনও বিষয় নয় যে ব্যক্তিটি বিশেষজ্ঞ ছিলেন না ... যথেষ্ট যথেষ্ট জ্ঞান তার রয়েছে এবং প্রয়োজনে গুগলে সঠিক পদগুলি জানেন terms

  • ব্রাউজার জুড়ে ডিবাগিং। হোস্টেড মোড প্রক্রিয়া বাইরে উপর নজর রাখুন [ 1 ] [ 2 ] [ 3 ], আশা GWT 1.6 আসছে ... এখন, আপনি শুধু, তারপর হোস্ট মোডের সঙ্গে জিনিসগুলি ভাল হবে "কম্পাইল / ব্রাউজ করুন" বোতামে ব্যবহার করতে হবে , যেখানে আপনি অন্যান্য ব্রাউজারগুলির সাথে খেলতে পারেন। আমার জন্য, উইন্ডোজটিতে কাজ করার অর্থ, এর অর্থ আমি ফায়ারফক্সে আমার কাজ দেখতে পারি, এবং ফায়ারব্যাগ ব্যবহার করতে এবং টুইঙ্কে সহায়তা করতে এবং জিনিসগুলি আরও ভাল করে তুলতে পারি।

  • IE6। এটি আশ্চর্যজনক যে কীভাবে আলাদা আই 6 things জিনিসগুলি রেন্ডার করবে। আমি ব্রাউজার অনুযায়ী বাইরেরতম "ভিউপোর্ট" এ একটি শৈলী প্রয়োগ করার পদ্ধতিকে গ্রহণ করেছি যাতে আমার সিএসএস বিধি থাকতে পারে:

    .my-style { /* stuff that works most everywhere */ }
    
    .msie6 .my-style { /* "override" so that styles work on IE 6 */ }

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


18

জিডব্লিউটি ২.০, যা পরের কয়েক মাসের মধ্যেই কিছু সময়ের মধ্যে প্রকাশিত হওয়ার কথা, আলোচিত বিষয়গুলির অনেকগুলি সমাধান করে।

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

গুগল আই / ও-তে জিডব্লিউটি ২.০ পূর্বরূপ ভিডিও


15

"কাটিয়ে উঠতে অক্ষম" নয় তবে মৌলিক কোনও কিছুর জন্য কিছুটা ব্যথা।

তারিখ পরিচালনা:

জিডব্লিউটি অবহ্রাসিত ব্যবহার করে java.util.Dateযা ক্লায়েন্টের পক্ষের তারিখগুলি নিয়ে কাজ করার সময় অপ্রত্যাশিত আচরণের দিকে পরিচালিত করতে পারে। java.util.CalendarGWT দ্বারা সমর্থিত নয়। আরও তথ্য এখানে

সম্পর্কিত সমস্যার উদাহরণ:


1
দু'বছর পরে, এবং এখনও এই অবস্থা। এটি ক্লায়েন্টের সাথে ডেট ম্যাথ করার জন্য বেশ বিরক্তিকর থেকে যায়।
জোসেফ লাস্ট

সমস্যাটি java.util.Calendarজাভাস্ক্রিপ্ট থেকে অনুবাদ (সংকলন) । এছাড়াও আপনি কটাক্ষপাত থাকতে পারে GWT এর বর্গCalendarUtil , কিভাবে GWT মধ্যে java.util.Calendar ব্যবহার করতে এবং কিভাবে জাভা GWT মধ্যে ক্যালেন্ডার অপারেশন করতে হবে? কিভাবে একটি তারিখে দিন যুক্ত করবেন? । চিয়ার্স;)
ওলিব্রে

10

আমি ইতিমধ্যে উল্লিখিতগুলির সাথে কিছু পয়েন্ট যুক্ত করব:

  • Databinding / বৈধতা। জিডাব্লুটিটির বাক্সের বাইরে কোনও ডেটাবাইন্ডিং / বৈধতা সমর্থন নেই, যদিও এই ক্ষেত্রটিতে কিছু প্রকল্পের উত্থান শুরু হয়। আপনি নিজেকে অনেক কিছুই লিখতে পাবেন:
টেক্সটফিল্ডের নাম, ফ্যাড্রেস;
...
fname.setText (person.getName ());
faddress.setText (person.getAddress ());
...
  • অলস লোড হচ্ছে। যেহেতু gwt ক্লায়েন্টের পক্ষে, অলস লোডিং সত্যিই কোনও বিকল্প নয়। আপনাকে আপনার আরপিসি এবং ডোমেন অবজেক্টগুলি যত্ন সহকারে ডিজাইন করতে হবে
    • আপনার সমস্ত অবজেক্ট ডেটা প্রেরণ করুন যা প্রয়োজনীয়
    • আপনার সমস্ত ডেটা আনতে আগ্রহী এড়ান
    • আপনাকে এটিও নিশ্চিত করতে হবে যে আপনি প্রক্সি / অ সিরিয়ালাইজেবল অবজেক্টগুলি প্রেরণ করবেন না। হাইবারনেট 4 জিডব্লিউটি এই পয়েন্টগুলিতে আপনাকে সহায়তা করতে পারে।
  • ইউআই ডিজাইন। এইচটিএমএল এর চেয়ে জাভাতে (প্যানেল, বোতাম ইত্যাদি) কোনও ইউআই কল্পনা করা শক্ত hard
  • ইতিহাস সমর্থন। জিডাব্লুটিটি হিস্ট্রি সাবসিস্টেমের সাহায্যে শিপিং করে না, বা দুর্দান্ত ইউআরএল বা স্টেটফুল বুকমার্কিংয়ের জন্য কোনও সাবসিস্টেমের সাথে শিপিং করে না। আপনাকে নিজের রোল করতে হবে (যদিও এটিতে ইতিহাস টোকেনগুলির সমর্থন রয়েছে, যা একটি শুরু)। এটি সমস্ত AJAX টুলকিটস AFAIK এর সাথে ঘটে।

আইএমএইচও, জিডব্লিউটি একটি ফ্রেমওয়ার্ক মিস করছে যা এই 'থ্রেড' এ উল্লিখিত সমস্ত ইস্যুর জন্য বাক্স সমর্থন ছাড়িয়েছে।


জিডাব্লুটিটি একটি ইতিহাসের ব্যবস্থা সহ জাহাজ চালায়, যেমন ইতিহাস.নিউআইটেম ("মাই আইটেম", মিথ্যা); সহজে বুকমার্কিংয়ের জন্য URL এ # মাই আইটেম রাখবে put আপনার অ্যাপ্লিকেশনটির সাথে বুকমার্ক লোড করা কেউ পরিচালনা করতে, কেবল হিস্ট্রি.এডডিওয়ালিউ চ্যাঞ্জহ্যান্ডলার (মাই হ্যান্ডলারমথোদ) ব্যবহার করুন;
Ztranger

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

9

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

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

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

জিডব্লিউটি এক্সট সম্পর্কিত আরও তথ্যের জন্য: http://gwt-ext.com/

এক্সটি জিডব্লিউটি (জিএক্সটি) সম্পর্কিত আরও তথ্যের জন্য: http://extjs.com/products/gxt/


1
যেহেতু এই প্রশ্নটি এখনও সক্রিয় এবং ভোট পাচ্ছে তাই আমি ভেবেছিলাম যে আমি একটি আপডেট সরবরাহ করব। আমি পুরোপুরি জিএক্সটি (২০০৯-২০১০) খালি করেছি কারণ আমি সেনচা ইনক এর ব্যবসায়িক অনুশীলন পছন্দ করি না। আমি পরে GWT খালি। আমি জাভাস্ক্রিপ্ট ব্যবহার করে এতক্ষণ ভয় পেয়েছি যতক্ষণ না আমি এটি ঘৃণা করি। এটি, যতক্ষণ না আমি সত্যিই এটি বুঝতে পারি। এখন আমি প্রায় একচেটিয়াভাবে নোড.জেএস / অ্যাঙ্গুলারজেএস এ বিকাশ করি। বুটস্ট্র্যাপ 3-এ টস করুন এবং আপনি জিডব্লিউটি-র তুলনায় অনেক কম সময়ে দুর্দান্ত একটি দর্শনীয় ওয়েবসাইট তৈরি করতে পারেন। ভবিষ্যতটি জাভাস্ক্রিপ্ট, আপনি যত তাড়াতাড়ি এই আলিঙ্গন করবেন আপনি তত উন্নত বিকাশকারী হবেন।
জে পি রিচার্ডসন

এখন আপনার মতামত কি? (শুধু কৌতূহলী) ধন্যবাদ
আকোস লুকাকস

1
@ আকোসলুকাকস আমি এখনও জানাতে পারি যে আমি জাভাস্ক্রিপ্ট ব্যবহার করছি এবং এর প্রতিটি বিটকেই ভালবাসি! যেমন আমি বলেছিলাম, আমি জাভাস্ক্রিপ্টকে ঘৃণা করি এবং তাই আমি কেন GWT বেছে নিয়েছি। বাস্তবতা হ'ল আপনি যদি কোনও ওয়েব বিকাশ করতে যাচ্ছেন তবে আপনি জাভাস্ক্রিপ্ট এড়াতে সক্ষম হবেন না, তাই আপনি এটিকেও আলিঙ্গন করতে পারেন। আমি জাভাস্ক্রিপ্ট সবকিছুর জন্য ব্যবহার করতে বেশ কিছুটা খাপ খাইয়ে নিয়েছি (গো এর সাথে সামান্য বিচরণ নিয়েছি)। আমার স্ট্যাক যতদূর যায় আমি নোড.জেএস / এক্সপ্রেস / প্রতিক্রিয়া ব্যবহার করি। আমি কৌণিকের একটি বড় অনুরাগী হিসাবে ব্যবহার করি এবং এটি বেশ ভাল জানি, তবে শেখার বক্ররেখা খুব বেশি হওয়ায় আমি জেএস দিয়ে শুরু করা কারও কাছে কৌনিক 1.x সুপারিশ করতে পারি না।
জে পি রিচার্ডসন

5

কোনও বড় ধরণের সমস্যা যা আমি সহজেই কাটিয়ে উঠতে পারি নি। হোস্টেড মোডটি ভারী ব্যবহার করুন। আপনি জিডাব্লুটিটি-এক্সট ব্যবহার করার সময় আপনি বাক্সের চেহারাটি বাইরে বের করতে চান না তবে নিজেকে আর কখনও সিএসএসের স্পর্শ করার প্রয়োজন হবে না।

আমার প্রস্তাবটি হ'ল একটি লাইব্রেরি যেখানে তারা বৈশিষ্ট্যগুলির নিকটে রয়েছে সেখানে একটি জিডাব্লুটি "স্থানীয়" উইজেট ব্যবহার করতে হবে।

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


4

কিছুক্ষণ আগে আমি একটি প্রকল্পে GWT এবং GWT-ext একসাথে ব্যবহার করেছি। ওয়েব ডেভলপমেন্টের সাথে আমি অভিজ্ঞতাটি বেশ মসৃণ পেয়েছি তবে আমার পরামর্শটি হ'ল:

GWT নেটিভ উইজেটগুলি এক্সটি উইজেটের সাথে মিশ্রিত করবেন না। এটি নরক হিসাবে বিভ্রান্তিকর, যেহেতু সাধারণত নামগুলি একই হয় (জিডব্লিউটি.বাটন বা জিডব্লিউটেক্সট।বাটন?)

আমার সাথে একটি ঘটনা ঘটেছে যা কোডটি আমার পছন্দের চেয়ে সত্যই জটিল করে তুলেছিল তা হ'ল আমি একটি প্যানেল চাই যা একটি ছিল) গতিশীলভাবে হালনাগাদযোগ্য খ) ক্যাসকেডেবল

জিডব্লিউটি নেটিভ প্যানেলগুলি গতিশীল, এক্সট প্যানেলগুলি ক্যাসকেডযোগ্য। সমাধান? একটি GWT. ভার্টিক্যালপ্যানেল একটি GWTExt প্যানেল মোড়ানো ... বিশৃঙ্খলা। :)

কিন্তু ওহে, এটা কাজ করে। ;)


4

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

একটি উইসইউইজি ইউআই সম্পাদক পান, এটি আপনাকে প্রচুর সময় সাশ্রয় করবে। আমি GWTDesigner ব্যবহার করি।

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

ওহ এবং এটি রানটাইমের সময়ে দ্রুত, বিশেষত যদি আপনি একটি জিজিপ ফিল্টার ব্যবহার করেন।


1
জিজিপ ফিল্টার সম্পর্কে জানতেন না - সেই টিডবিটের জন্য ধন্যবাদ।
আগরতজকে

4

সামান্য সামান্য অফ-টপিক, তবে আইসিতে #gwt চ্যানেলটি খুব সহায়ক, যদি আপনার অবিরাম সমস্যা থাকে have


কোন আইআরসি নেটওয়ার্ক চ্যানেলটি চালু আছে?
tovare

এটি ফ্রেইনোডে রয়েছে (irc.freenode.net)। এবং এটি আসলে ## gwt, তবে আপনি যদি #gwt টাইপ করেন তবে আপনাকে এটিতে এগিয়ে দেওয়া হবে।
স্ট্যান

4

জিডাব্লুটিটি বেশ সোজা-এগিয়ে এবং স্বজ্ঞাত।

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

সুতরাং আপনি যদি অন্য অ্যাজাক্স বা ফ্ল্যাশ ডিজাইনের সরঞ্জামগুলি বা সিলভারলাইট ইত্যাদি ব্যবহার করেন তবে জিডব্লিউটি শিখতে খুব সহজ।

বড় বাধা, যদি না পড়ে তবে হ'ল জিডব্লিউটি আরপিসি। আপনি জিডব্লিউটি ব্যবহার করতে ইচ্ছুক কারণ হ'ল জিডব্লিউটি অ্যাসিঙ্ক আরপিসি। অন্যথায়, আপনার পৃষ্ঠার ফর্ম্যাট করতে কেবল CSS এর উপর নির্ভর করবেন না কেন?

জিডব্লিউটি আরপিসি হ'ল উপাদান যা আপনার সার্ভারকে পৃষ্ঠাটি রিফ্রেশ না করেই আপনার সার্ভারে ডেটা রিফ্রেশ করতে দেয়। এটি স্টক পারফরম্যান্স মনিটরিংয়ের মতো পৃষ্ঠাগুলির জন্য (বা মার্কিন যুক্তরাষ্ট্রের বর্তমান জাতীয় এবং পাবলিক debtণ বা দ্বিতীয় দ্বারা বিশ্বজুড়ে বাতিল হওয়া গর্ভজাত শিশুর সংখ্যা) এর জন্য নিখুঁত প্রয়োজনীয়তা।

জিডব্লিউটি আরপিসি বুঝতে কিছু চেষ্টা করে তবে কয়েক ঘন্টা দেওয়ার পরে, এটি সমস্ত পরিষ্কার হওয়া উচিত।

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

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


আমি আপনার ব্লগ নিবন্ধগুলিতে একটি লিঙ্ক চাই;)
এমএস-টিজি

h2g2java.blessedgeek.com
ধন্য

3

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


3
  • প্রতিটি সার্ভিস ইন্টারফেসের জন্য আপনাকে লিখতে হবে অ্যাসিঙ্ক ইন্টারফেসটি এমন কিছু দেখাচ্ছে যা GWT সংকলক দ্বারা স্বয়ংক্রিয়ভাবে উত্পন্ন হতে পারে।
  • সংকলনের সময়গুলি বড় প্রকল্পগুলির জন্য দীর্ঘ হয়ে যায়

তবে একটি বৃহত জাভাস্ক্রিপ্ট প্রকল্পের জন্য এটি সেরা পছন্দ


3

জিডব্লিউটি ২.৪ উপরে উল্লিখিত অনেকগুলি সমস্যা সমাধান করেছে এবং একটি দুর্দান্ত উইজেট লাইব্রেরি সবেমাত্র বিটা (এক্সট্রা জিডব্লিউটি 3.0.4 ওরফে জিএক্সটি) থেকে বেরিয়ে আসছে যা পুরোপুরি জিডব্লিউটিতে লিখিত আছে, জেএস লাইবের মোড়ক নয়।

বাকি ব্যথা:

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

2

জিডব্লিউটি ২.৪ সম্পর্কিত, জিডাব্লুটিটি ডিবাগ করার সময় ফায়ারফক্স ব্যবহার করুন, ক্রোম ব্যবহারের পরে এটি আরও দ্রুত। এবং যদি আপনি কেবল ফায়ারফক্স ব্যবহার করেন তবে আপনার প্রকল্প.gwt.xML ফাইলটিতে এই লাইনটি রাখার বিষয়টি বিবেচনা করুন

<set-property name="user.agent" value="gecko1_8" />

এছাড়াও, আপনি যদি গ্রহপ ব্যবহার করছেন, তবে নিম্নলিখিত যুক্তিগুলিতে -> ভিএম আর্গুমেন্ট যুক্ত করুন:

-Xmx512 মি-এক্সএক্স: ম্যাক্স্পার্মসাইজ = 1024 মি-এক্সএক্স: পার্মসাইজ = 1024 মি

আপনি আপনার সার্ভার এবং ক্লায়েন্টকে বিভক্ত করতে পারেন এবং নিম্নলিখিত যুক্তিগুলি -> প্রোগ্রাম আর্গুমেন্টের অধীনে ব্যবহার করতে পারেন: -কোডসर्ভারপোর্ট 9997 -startupUrl HTTP: // yourerver / প্রোজেক্ট -নোসার্ভার

এছাড়াও, প্রতিটি পরিবর্তনে আপনার সার্ভারকে রিফ্রেশ প্রতিরোধ করতে, JRebel http://zeroturnaround.com/blog/how-to-rock-out-with-jrebel-and-google-web-toolkit-gwt/ ব্যবহার করুন এবং এখানে একটি লাইভ ডেমো রয়েছে http://www.youtube.com/watch?feature=player_embedded&v=4JGGFCzspaY


1

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

আমি অন্য কোথাও জিডব্লিউটি এর আরও কিছু অসুবিধাগুলি সম্পর্কে লিখেছি , তবে সেগুলি ইতিমধ্যে রাস্টিশেলফ উত্তর দ্বারা আবৃত :) :)


আপনি যদি সেলেনিয়াম ব্যবহার করে পরীক্ষা করার পরিকল্পনা করেন তবে সাধারণত আইডি বরাদ্দ করা খারাপ জিনিস নয়।
পেটারি হিটাভির্তা

1

আমি সম্প্রতি জিডাব্লুটিটিতে অনেক কাজ করেছি এবং এটিই আমাকে বলতে হবে:

  1. সিএসএস স্টাইলিং কেবল কখনও কখনও জটিল, আইইতে আইই বিকাশকারী সরঞ্জাম এবং ফায়ারফক্সে ফায়ারব্যাগ ব্যবহার করুন ঠিক কী ঘটছে তা নির্ধারণ করার জন্য এবং সিএসএস পরিবর্তন করার কী দরকার তা সম্পর্কে আপনি একটি পরিষ্কার ধারণা পাবেন
  2. এটিকে সূচীতে গুগল পেতে আপনি কৌশলগুলি ব্যবহার করতে পারেন। একটি খুব বিখ্যাত সাইট হ'ল http://exferences.roughian.com/ গুগলে এর রেটিংগুলি পরীক্ষা করে দেখুন। একটি খুব কম বিখ্যাত সাইটটি হ'ল www.salvin.in ( এটি উল্লেখ করতে পারিনি), আমি এটি কথায় অপ্টিমাইজ করেছি: সালভিন হোম পৃষ্ঠা (এই তিনটি শব্দের জন্য গুগল অনুসন্ধান করুন)

আমি জিডব্লিউটি-এক্সটি সম্পর্কে খুব বেশি জানি না, তবে আমিও বিশ্বাস করি যে তৃতীয় পক্ষের লাইব্রেরিগুলি অন্তর্ভুক্ত করার দরকার নেই।

আপনার সিদ্ধান্তের জন্য শুভেচ্ছা :)


1

জিডাব্লুটিটি বৈশিষ্ট্য সনাক্তকরণের পরিবর্তে ব্রাউজার স্নিফিং করে এবং আপনার অ্যাপ্লিকেশন কিছু ব্রাউজারে কাজ করবে না (বিশেষত নতুন)

এখানে সমস্যার কয়েকটি উল্লেখ রয়েছে:

বৈশিষ্ট্য সনাক্তকরণের জন্য এখানে কিছু উল্লেখ রয়েছে:

জাভাস্ক্রিপ্ট ফ্রেমওয়ার্কের তুলনা থেকে বের করা হয়েছে - উইকিপিডিয়া


1

জিডাব্লুটি টিম গত বছরের জিডব্লিউটি ২.7 প্রকাশের ক্ষেত্রে অনেক দুর্দান্ত উন্নতি করেছে। জিডাব্লুটিটির একটি প্রধান দুর্বলতা হ'ল সংকলনটি GWT 2.6 এবং এর নীচে খুব বেশি সময় নেয়। এটি এখন চলে গেছে জিডব্লিউটিতে ইনক্রিমেন্টাল সংকলন নেই যা সুপার দ্রুত এবং কেবলমাত্র পরিবর্তনগুলি সংকলন করে।

জিডব্লিউটি ২.7 এর এখন ( উত্স ) রয়েছে:

  • বর্ধিত বিল্ড এখন ঠিক সেকেন্ডে
  • আরও কমপ্যাক্ট, আরও নির্ভুল উত্স মানচিত্র
  • জিএসএস সমর্থন
  • JSInterop
  • দুর্দান্ত জাভাস্ক্রিপ্ট পারফরম্যান্স
  • ছোট কোডের আকার

1

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

এটি লক্ষণীয় যে GWT 3.0 ব্যাপক উন্নতি আনবে massive


0

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


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

0

সমস্যাগুলি আমি ১ এর মধ্যে চলে এসেছি super সুপারদেব মোডে ভিন্ন আচরণ। উদাহরণস্বরূপ Someclass.class.getName () সুপারদেব মোডে একেবারে সূক্ষ্ম কাজ করে এবং শ্রেণীর পুরোপুরি যোগ্যতাসম্পন্ন নামটি প্রদান করে। উত্পাদনশীল মোডে এটি কাজ করে না।

  1. অ্যাড উইজেট (উইজেট) উইজেটের অপসারণকারীকে কল করবে ()

0

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

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

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

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

কিছু স্ব-ঘোষিত "অ্যান্টি-প্যাটার্ন" রয়েছে যেমন GWT-RPC ব্যবহার করবেন না। এটি এখন পর্যন্ত আমার পক্ষে ভাল হয়েছে: 10 বছর ধরে। সরলতা কী। কোড কমনীয়তা এবং রক্ষণাবেক্ষণের জন্য কিছু প্রান্তিক পারফরম্যান্স ত্যাগ করতে আমি এক সেকেন্ডও ভাবি না। এটি ছাড়াও যেখানে আপনার বাধা থাকবে না - ডাটাবেসে। অবশ্যই আপনি ক্লায়েন্টকে কত ডেটা পাঠাচ্ছেন তা মনে রাখবেন।

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

জিডব্লিউটি নিখুঁত। এটি পর্যাপ্ত ভালবাসা না পাওয়ার একমাত্র কারণ হ'ল যে প্রাথমিক বিজ্ঞানীরা এখনও শিল্পকে প্রভাবিত করে কম্পিউটার বিজ্ঞান এবং অবজেক্ট-ভিত্তিক ভাষা থেকে তাদের প্রশংসা করতে আসে নি them তাদের হয় শৈল্পিক (ফটোশপ / ওয়ার্ডপ্রেস) বা নেটওয়ার্ক (পার্ল / পাইথন) পটভূমি।

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