PDA

View Full Version : سوال: استفاده از امکانات WPF



khorsandreza
جمعه 31 خرداد 1392, 20:24 عصر
سلام
همانطور که دوستان اطلاع دارند VS تکنولوژی WPF ارائه کرده است می خواستم بدانم آیا دلفی در این رابطه کاری انجان داده است و یا ابزار های برای این تکنولوژی دارد ؟

Felony
جمعه 31 خرداد 1392, 20:56 عصر
خیر ؛

قبلا چند بار گفتم ، باز هم میگم ، سیاست هایی که Embarcadero پیش گرفته سیاست های بسیار غیر معقولانه ای هست ، افتاده دنبال یکسری جنگولک بازی تا یکسری کاربر تازه وارد رو با لیست Feature هاش جذب کنه در صورتی که هیچ کدوم مثل آدم کار نمیکنن ( Visual Live Bindings , iOS Development , Datasnap ، Firemonkey , Metropolice UI و ... ) ، واقعا از نسخه XE2 به بعد به شخصه ازش نا امید شدم و خیلی از دوستان رو میشناسم که نظرشون با من موافق هست ، دلفی تازه داشت جون میگرفت که سیاست های عجیب و غریب Embarcadero و Roadmap های خنده دارش شروع شد ، اون هم از مدیر پروژه جدیدش ( Marc Cantu ) که واقعا در حد و اندازه های این پروژه نیست .

بی تعارف مایکروسافت داره تو حوزه توسعه نرم افزار خیلی تخصصی و مهندسی کار میکنه ، تکنولوژی هایی مثل WPF , WCF , Entity Framework و ... ، من یکی از طرفداران سرسخت Delphi بودم ولی در حال حاظر سیاست های غلط Embarcadero جایی برای طرفداری از این محصول نذاشته ، برای پروژه های سازمانی بزرگ واقعا دلفی در مقابل #C حرفی برای گفتن نداره ، کتابخانه های غنی ، کامپوننت های متعدد و فراگیر ، پشتیبانی بسیار قوی مایکروسافت ، ORM های متعدد و بسیار قوی ، Document ها و نمونه کدهای بسیار غنی ، یکپارچگی ابزارهای مایکروسافتی ( SQL Server , Visual Studio , Team Foundation و ... ) این موارد واقعا توسعه یک نرم افزار Enterprise رو ساده میکنه و در بلند مدت روند توسعه نرم افزار ، خوانایی برنامه . هزینه های جانبی توسعه نرم افزار رو به صورت چشمگیری کاهش میده .

در مورد نرم افزارهای سیستمی ، ++VC واقعا خارق العاده داره عمل میکنه ، نمونه کدهای بسیار غنی و افزایش روزانه کتابخانه های مایکروسافتی این زبان رو به سمت یکه تازی بازار نرم افزارهای سیستمی داره پیش میبره ، به شخصه دهنم سرویس شد اینقدر کدهای ++C رو برای نرم افزار های سیستمی و امنیتی که مینویسم به Delphi ترجمه کردم ، تو این چند ماهی که حرفه ای دارم باهاش کار میکنم خیلی ازش راضی هستم .

خلاصه فعلا اصلا نمیشه رو Delphi برای آینده حرفه ای ، شغلی و ... حساب باز کرد ، به شخصه چند ماه هست دیگه با دلفی کد خاصی نمیزنم مگر در موارد خاص ، در حال حاظر دلفی فقط برای توسعه Tools ها و برنامه های دم دستی ولی قوی مناسب هست نه بیشتر .

برای کسانی که تازه میخوان کار با این زبان رو شروع کنن :

به هیچ عنوان به عنوان آینده شغلی روی این زبان حساب باز نکنید ، دلفی از زبان رفتن Andres Hejlsberg و به خصوص از زمان بورلند به بعد چندین بار ثابت کرده که دیگه نمیتونه مثل قبل قابل اعتماد باشه و عقل سلیم حکم میکنه در این شرایط و با این سیاست ها حداقل تا 2 سال آینده سراغش نرید .

* لطفا الکی پست تعصبی ندید و ازش دفاع نکنید که این دل من خونه ! و برای هر مطلبی یه دنیا حرف دارم :)

موفق باشید .

khorsandreza
شنبه 01 تیر 1392, 15:16 عصر
خیر ؛

* لطفا الکی پست تعصبی ندید و ازش دفاع نکنید که این دل من خونه ! و برای هر مطلبی یه دنیا حرف دارم :)

موفق باشید .
سلام
غرض از پست دفاع تعصبی نبود بیشتر جنبه سوالی داشت جند وقت پیش یکی از دوستان نرم افزاری را با استفاده از WPF طراحی کره بود برایم جالب شد که آیا دلفی نیز در این وادی کارکرده یا نسخه های جدیدش چنین قابلیتی اضافه شده یا نه من خودم شاخه به شاخه رفتن را دوست ندارم ولی ز قسمت vs واقعا خوشم امد

BORHAN TEC
دوشنبه 03 تیر 1392, 01:21 صبح
سلام


همانطور که دوستان اطلاع دارند VS تکنولوژی WPF ارائه کرده است می خواستم بدانم آیا دلفی در این رابطه کاری انجان داده است و یا ابزار های برای این تکنولوژی دارد ؟
برای تکنولوژی WPF ابزاری ارائه نداده است ولی Embarcadero فریم ورکی مشابه WPF با نام FireMonkey (یا FMX) دارد که قابل قیاس با WPF است. تنها مشکل FMX در حال حاضر عدم پشتیبانی از راست به چپ است که این امر باعث شده که فعلاً این فریم ورک برای ساخت برنامه های فارسی و یا عربی و یا سایر زبانهای راست به چپ مناسب نباشد. یکی از مزایای خوب فایرمانکی توانایی ساخت برنامه های سه بعدی می باشد. توجه داشته باشید که در زمان XE2 آقای David Intersimone آموزشهای گام به گامی را برای FMX در حدود 400 صفحه نوشتند.

ن ( Visual Live Bindings , iOS Development , Datasnap ، Firemonkey , Metropolice UI و ... )
Metropolice ui رو قبول دارم که زیاد جالب نیست، ّFMX برای ساخت برنامه های فارسی مناسب نیست ولی بقیه رو باهات موافق نیستم(این موضوع هیچ ربطی هم به تعصب نداره، لطفاً از تکنیکهای روانشناسی استفاده نکن!)

اون هم از مدیر پروژه جدیدش ( Marc Cantu ) که واقعا در حد و اندازه های این پروژه نیست .
مدیر پروژه!!! منظورت Delphi Product Manager هست دیگه؟! این موضوع چه ربطی به مدیر پروژه داره؟! Marco Cantu سمتی معادل Nick Hodges و M.Rozlog رو داره و اصلاً قرار نیست که جای اشخاصی مثل Andres Hejlsberg و یا Allen Bauer رو بگیره. این مقایسات هیچ سنخیتی با سمت شغلی آقای کانتو نداره. Delphi Product Manager سمتی است که کار اصلی آن ایجاد پلی بین مشتری ها با سازندگان است.

بی تعارف مایکروسافت داره تو حوزه توسعه نرم افزار خیلی تخصصی و مهندسی کار میکنه ، تکنولوژی هایی مثل WPF , WCF , Entity Framework و ... ، من یکی از طرفداران سرسخت Delphi بودم ولی در حال حاظر سیاست های غلط Embarcadero جایی برای طرفداری از این محصول نذاشته ، برای پروژه های سازمانی بزرگ واقعا دلفی در مقابل #C حرفی برای گفتن نداره ، کتابخانه های غنی ، کامپوننت های متعدد و فراگیر ، پشتیبانی بسیار قوی مایکروسافت ، ORM های متعدد و بسیار قوی ، Document ها و نمونه کدهای بسیار غنی ، یکپارچگی ابزارهای مایکروسافتی ( SQL Server , Visual Studio , Team Foundation و ... ) این موارد واقعا توسعه یک نرم افزار Enterprise رو ساده میکنه و در بلند مدت روند توسعه نرم افزار ، خوانایی برنامه . هزینه های جانبی توسعه نرم افزار رو به صورت چشمگیری کاهش میده .

هر موقع که خیلی راحت یکی از تکنولوژیهاش رو منسوخ شده اعلام کرد متوجه میشی که هزینه های جانبی توسعه نرم افزار کاهش پیدا میکنه یا افزایش. این که میگی که دلفی برای توسعه برنامه های سازمانی مناسب نیست رو قبول ندارم. من مدتهاست که با DataSnap در سطح حرفه ای کار می کنم. درسته که طبق مقایسه ای که در مقاله DataSnap analysis based on Speed & Stability tests به اون اشاره شده DataSnap سرعت پایین تری داره ولی همه مسائل سرعت نیست. هر چند که قبول دارم سرعت پایین یک ضعف است ولی DataSnap لیست قابلیتهای بسیار کامل و شایسته ستایشی دارد. به هر حال به نظر من هم دلفی در بعضی مسائل ضعف دارد. یکیش اینه که بهتره که در درون خودش به صورت ذاتی ORM و موارد دیگه رو داشته باشه. از یکسری لحاظ هم سخنان شما در برخی شرایط (لااقل برای بنده کمی تند و غیر منطقی به نظر می رسد). گفته بودی که مارکو کانتو در حد و اندازه این پروژه نیست. گفته بودی که از زمان XE2 به بعد Embarcadero سیاست های غلطی رو پیش گرفته. به نظر شما اضافه کردن محصول واقعاً ارزشمند FireDAC بی سیاستی بوده؟ دوست دارم یه مقدار این محصول رو مورد آزمایش قرار بدی تا خودت متوجه سرعت، پایداری و قابلیتهای بی نظیر اون بشی. من زیاد با دات نت کار نکرده ام و در این مورد هم ادعایی ندارم ولی شما که کار کردی! دوست دارم بدونم که مایکروسافت هم به صورت ذاتی از پایگاه داده هایی که در FireDAC مورد پشتیبانی قرار گرفته با این سطح از قابلیت پشتیبانی میکنه؟!

به هیچ عنوان به عنوان آینده شغلی روی این زبان حساب باز نکنید ، دلفی از زبان رفتن Andres Hejlsberg و به خصوص از زمان بورلند به بعد چندین بار ثابت کرده که دیگه نمیتونه مثل قبل قابل اعتماد باشه و عقل سلیم حکم میکنه در این شرایط و با این سیاست ها حداقل تا 2 سال آینده سراغش نرید .
من نمیدونم که رفتن Hejlsberg چه ربطی به غیر قابل اعتماد شدن دلفی داره. چند بار هم به جنابعالی گفته ام که بزرگترین موفقیت های دلفی چندین سال بعد از رفتن این شخص بوده است. شکی ندارم که Hejlsberg یک مهندس بزرگ در حوزه نرم افزار است ولی اگر به سال رفتن این شخص دقت کنی میبینی که رفتنش هیچ ربطی به مسائل پیش آمده نداشته است. Andres Hejlsber شرکت بورلند رو در سال 1996 یعنی در زمان دلفی 2 ترک کرده! خداییش اگه یکبار دیگه این رو بخوای ربط بدی خودم رو از پشت بوم با کله میندازم پایین! :لبخندساده: من همیشه در پاس کردن دروس ریاضی مشکل داشتم، همیشه برام مثل سرطان بوده ولی خداییش بیا با هم جمع و تفریق رو از اول یاد بگیریم! :چشمک:

* لطفا الکی پست تعصبی ندید و ازش دفاع نکنید که این دل من خونه !
دل شما از این خونه که دلفی از همان ابتدا برای کاربردهای RAD طراحی شده و نه کاربردهای سیستمی. تکنیک روانشناسی جالبی بود حاج مجتبی. :چشمک:

و برای هر مطلبی یه دنیا حرف دارم :)
داداش ما آماده شنیدن درد دل شما هستیم. :گریه:

ولی گذشته از شوخی مهمترین شکست برنامه نویسان عزیز تکیه کردن فقط به یک زبان خاص است که این مورد اصلاً کار درستی نیست. از دیدگاه من هر زبانی ویژگی های مثبت و منفی خودش را دارد و هیچ زبانی بهترین برای همه شرایط نیست. مثلاً بنده برای مسائل خاص خودم مجبورم که بیشتر از C++‎‎‎‎/Qt و Delphi استفاده کنم و شخص دیگری ممکن است که مجبور باشد از زبانهای دیگری بهره ببرد. آنچه مشخص است این است که نباید فقط بر یک زبان و فریم ورک خاص تکیه زد. از نظر من هم تعصب در مسائلی مثل دین و ناموس و ... است و نه یک ابزار که در مورد ما "زبان برنامه نویسی" است!

ولی حاج مجتبی به نظر من انتخاب Marco Cantu یکی از بهترین انتخابها بود. مارکو فکر دید بسیار بازی در خصوص برنامه نویسی دارد. من نمیدونم که چرا این بنده خدا رو که حقیقتاً یکی از بهترین انتخابها و حتی به نظر من بهترین انتخاب در تاریخ دلفی! بوده است رو اینقدر تخریب شخصیتی می کنی!!! :متفکر: مارکو یک مصاحبه تصویری با DavidI (اگه اشتباه نکنم در سال 2007) داره که دیدنش رو به شما توصیه می کنم. فکر می کنم که کلیپش در همون فیلمهایی که داری موجود باشه. با مقایساتی که من خودم شخصاً انجام داده ام مطمئن هستم که مارکو از Nick Hodges سطح دید بهتری دارد. اگه پروژه شکست خورده Delphi for .Net رو یادت بیاد خیلی بهتر متوجه میشی که چی می گم. بزرگترین شکست دلفی موقعی بود که سازندگان دلفی بیشتر وقت خود را روی این محصول مسخره گذاشتند و از محصول Native غافل شدند. آیا این توضیحات باز هم کافی نیست؟

موفق باشید...

soft-c
دوشنبه 03 تیر 1392, 10:42 صبح
به هیچ عنوان به عنوان آینده شغلی روی این زبان حساب باز نکنید ، دلفی از زبان رفتن Andres Hejlsberg و به خصوص از زمان بورلند به بعد چندین بار ثابت کرده که دیگه نمیتونه مثل قبل قابل اعتماد باشه و عقل سلیم حکم میکنه در این شرایط و با این سیاست ها حداقل تا 2 سال آینده سراغش نرید .
البته من هم قبول دارم که از لحاظ بازار و کار دلفی با مشکل مواجه است ولی فکر نکنم این به خاطر ضعف دلفی باشه .
الان ما در شرکتمون با دلفی داریم پروژه های مختلفی ایجاد می کنیم و با مشکلی هم مواجه نیستیم اون هم با چه ورژنی : دلفی 7
یعنی هنوز متاسفانه وقت نکردیم بریم روی ورزن های جدیدتر . ولی تا حالا که با اون مشکل نداشتیم .
تازه من هرکار کردم که رییس شرکت قبول کنه کمی از کدها را به .net منتقل کنیم به هیچ عنوان قبول نکرد . چون تا حالا که در توسعه مشکلی نداشته .

Felony
دوشنبه 03 تیر 1392, 16:35 عصر
برای تکنولوژی WPF ابزاری ارائه نداده است ولی Embarcadero فریم ورکی مشابه WPF با نام FireMonkey (یا FMX) دارد که قابل قیاس با WPF است. تنها مشکل FMX در حال حاضر عدم پشتیبانی از راست به چپ است که این امر باعث شده که فعلاً این فریم ورک برای ساخت برنامه های فارسی و یا عربی و یا سایر زبانهای راست به چپ مناسب نباشد. یکی از مزایای خوب فایرمانکی توانایی ساخت برنامه های سه بعدی می باشد. توجه داشته باشید که در زمان XE2 آقای David Intersimone آموزشهای گام به گامی را برای FMX در حدود 400 صفحه نوشتند.

Metropolice ui رو قبول دارم که زیاد جالب نیست، ّFMX برای ساخت برنامه های فارسی مناسب نیست
چیش قابل قیاس با WPF هست ؟! یعنی الان تنها مشکل FireMonkey نسبت به WPF عدم پشتیبانی از راست به چپ برای برنامه های فارسی زبان هست ؟!

وقتی به یک قابلیت میگن مزایا که تو محصول هریف وجود نداشته باشه ، این 3D خیلی بهتر از FireMonkey با پشتیبانی از DirectX و ... در WPF وجود داره ، کلی کتنابخانه و ابزار متن باز همه جدا براش عرضه شده .

یعنی FireMonkey از این مزایای WPF برخورداره و ما ندیدم ؟ :

- XAML
- Animation
- Input Levels
- Control templates
- Layout system
- Styles & Triggers
- Dependency properties

و خیلی موراد دیگه که الان در ذهنم نیست :)

من موندم چی رو دارید با چی مقایسه میکنید !
یکسری کامپوننت درب و داغون که Eugene Kryukov با نام VG Scene توسعه میداد که همه تو دنیا بهش میخندیدن و هیچ کاربرد خاص عملی تو پروژه های تجاری نداشت یه احمقی به خاطر سیاستاش ( نجات از منجلابی که توش گیر کرده ) اومده خریده و اسمش رو گذاشته FireMonkey و حالا دارید این رو با WPF که حاصل کار چندین هزار نفر / ساعت کار مهندسی و علمی هست مقایسه میکنید ، اون هم چی ، تیم طراحی و توسعه WPF مایکروسافت در مقایسه با یک برنامه نویس روس یا نه اصلا تیم توسعه Firemonkey در Embarcadero شاید هم کل تیم توسعه RAD Studio !

پروژه هایی که با WPF طراحی شدن روز به روز دارن بیشتر میشن ، پروژه های بزرگ و تجاری که تو کل دنیا دارن استفاده میشن ، یه همچین پروژه ای رو در حال حاظر با ابزارهای Embarcadero معرفی کنید ... :)


( Visual Live Bindings , iOS Development , Datasnap ، Firemonkey , Metropolice UI و ... )
ولی بقیه رو باهات موافق نیستم(این موضوع هیچ ربطی هم به تعصب نداره، لطفاً از تکنیکهای روانشناسی استفاده نکن!)
این که نشد ، خوب منم الان میام میگم با حرفت موافق نیستم ...

در مورد Visual Live Bindings که یک ابزار کاملا Fun برای Invitation For Kids هست که به یه بچه نشون بدی بگی ببین چقدر باحالاه ، 4 تا کلیک میکنی برنامه ساخته میشه ! خوب که چی ؟ این برای زمانی هست که دلفی در بورلند توسعه داده میشد و اینقدر از زبان های همرده خودش غنی تر و جامع تر بود که دیگه نمیدونستن چه جرندیاتی بهش اضافه کنن ... نه الان که تو بازار نرم افزار به فراموشی سپرده شده ...

در مورد iOS هم که واقعا من نمیدونم رو چه حساب با من موافق نیستید ، شما تال به حال برای iDevice ها برنامه نویسی کردید ؟! با محیط X-Code آشنایی دارید ؟! به این جنگولک بازی ها میگین محیط توسعه برای iOS ؟! یعنی واقعا فکر میکنید برنامه هایی مثل Awesome Note یا Pinnacle Studio رو میشه با این محیط مزخرفی که Embarcadero طراحی کرده میشه طراحی کرد ؟ یا میشه بهش امید داشت به این جا برسه ؟! تازه این ها برنامه های متوسط APP Store هستند ، مگه یک نفر مریضه یه برنامه رو با Delphi برای iOS توسعه بده ، بعد بیاد روی X Code کامپایلش کنه تا بتونه رو یک iDevice اجراش کنه .

در مورد Datasnap هم قبلا بهتون گفتم ، در حال حاظر WCF داره جلوتر ازش حرکت میکنه ، و در مورد سرعتش هم بدبختی چیزی نیست که بشه ازش چشم پوشی کرد ، WCF که از درایور کرنل مد HTTP.sys استفاده میکنه کجا و پیاده سازی های Indy که در Datasnap استفاده شده کجا ، به جز اون موراد زیادی هست که فاصله این دو ابزار رو روز به روز زیادتر میکنه .


مدیر پروژه!!! منظورت Delphi Product Manager هست دیگه؟! این موضوع چه ربطی به مدیر پروژه داره؟! Marco Cantu سمتی معادل Nick Hodges و M.Rozlog رو داره و اصلاً قرار نیست که جای اشخاصی مثل Andres Hejlsberg و یا Allen Bauer رو بگیره. این مقایسات هیچ سنخیتی با سمت شغلی آقای کانتو نداره. Delphi Product Manager سمتی است که کار اصلی آن ایجاد پلی بین مشتری ها با سازندگان است.
من حواسم نبود و واژه مدیر پروژه رو به کار بردم ، دقیقا منظورم همون مدیر محصول بود ، ایشون در این حد هم نیستن ، دلیل نمیشه کسی که کتاب های خوبی نوشته بتونه مدیر خوبی هم باشه ، دلیل رو پایین تر برای این موضوع میگم .



هر موقع که خیلی راحت یکی از تکنولوژیهاش رو منسوخ شده اعلام کرد متوجه میشی که هزینه های جانبی توسعه نرم افزار کاهش پیدا میکنه یا افزایش.
1- این که یه پروژه رو Deprecate اعلام کنن خیلی بهتر از این هست که سال ها با وعده سر خرمن دنبال خودشون بکشن آدمو .
2- این سیاست های نانوشته مایکروسافت هست ، هیچ وقت نباید به تکنولوژی هایی که زیر 2 سال سابقه دارن دل ببندی و زیاد روشون مانور بدی چون ممکنه ایده آل های مایکروسافت رو براورده نکنن ، بعد از اون اگر مسنوخش نکردن یعنی برای مدت زمان طولانی میشه روش حساب باز کرد و توقع بهترین ، سریعترین و فنی ترین پشتیبانی رو از یکی از بهترین تیم های توسعه دنیا داشت ، نه اینکه Bug ریپورت کنی و بعد از 4 سال کمپانی محترم Delphi هنوز نیم بیشتری از باگ ها رو رفع نکرده باشه و یک بیلاخ حواله آدم کنه .

یکی از دوستان 3 سال پیش باگی رو ریپورت کرده بود که با چند خط کد ساده کامپایلر دلفی تو یک loop میافتاد و در آخر فریز میشد و ... ، هنوز که هنوزه وجود داره ، خود من تا به حال 7 باگ ( 3 باگ کامپایلر و 4 باگ کامپوننت ) گزارش کردم که از همشون حداقل 2 سال میگذره ، هنوز که هنوزه همشون سر جاش باقیه .



من مدتهاست که با DataSnap در سطح حرفه ای کار می کنم. درسته که طبق مقایسه ای که در مقاله DataSnap analysis based on Speed & Stability tests به اون اشاره شده DataSnap سرعت پایین تری داره ولی همه مسائل سرعت نیست. هر چند که قبول دارم سرعت پایین یک ضعف است ولی DataSnap لیست قابلیتهای بسیار کامل و شایسته ستایشی دارد.
دوست عزیز منم دیروز صبح نیومدم بشینم پای دلفی و چیزی ازش ندونم و فقط قیافش و نگاه کرده باشم و از UI ش خوشم نیومده باشه و در مرودش بد بگم ، دارم باهاتون بحث فنی میکنم ، اینکه شما با Datasnap کار حرفه ای کردی دلیل نمیشه ، منم با Indy کارهای مختلف و بسیار سنگینی انجام دادم ، منم با Omni Threads خیلی حرفه ای کار کردم ، کتابخونه هایی که به جز چند نفر انگشت شمار میدونم کسی به صورت حرفه ای باهاشون کار انجام نداده ، ولی همونطور که گفتم کار حرفه ای کردن یک بحث هست ، کار تجاری کردن بحث دیگر .

من از همین دلفی تو 2 سالی که باهاش بیرون کار کردم درامد خوبی داشتم ، چیزی که ممکنه یک برنامه نویس Net. نداشته باشه ، یک برنامه نویس ++C نداشته باشه ، یک برنامه نویس Android و iOS نداشته باشه و ... که باز هم در مورد این بند پایین صحبت میکنم .

تو کار تجاری یک تیم باید روی یک پروژه کار کنند، پروژه یک Life Time مشخصی داره که تو این مدت باید به صورت کامل و با کمترین هزنیه به روزرسانی و توسعه داده بشه ، تو ابزارهای مختلف کمپانی های مختلف بر اساس عملکرد قبلی کمپانی ها میشه تصمیم گرفت که مثلا اگر پروژه بر اساس .Net و زبان #C و تکنولوژی WPF و WCF داره پیش میره میشه یک Life Time مثلا 5 ساله براش در نظر گرفت ، چون مایکروسافت همونطور که گفتم پروژه هایی که امتحان خودشون رو پس داده باشن رو Deprectae نمیکنه و برای پروژه های قدیمی که همچین سیاستی در مرودشون اتخاذ میکنه حداقل 2 سال زمان میده و به همه اعلام میکنه که 2 سال دیگه این محصول از رده خارج میشه و پشتیبانیش نمیکنه ، حداقل شما تکلیفت رو میدونی باید 2 ساله خودت رو جمعع و جور کنی .


گفته بودی که مارکو کانتو در حد و اندازه این پروژه نیست. گفته بودی که از زمان XE2 به بعد Embarcadero سیاست های غلطی رو پیش گرفته. به نظر شما اضافه کردن محصول واقعاً ارزشمند FireDAC بی سیاستی بوده؟ دوست دارم یه مقدار این محصول رو مورد آزمایش قرار بدی تا خودت متوجه سرعت، پایداری و قابلیتهای بی نظیر اون بشی. من زیاد با دات نت کار نکرده ام و در این مورد هم ادعایی ندارم ولی شما که کار کردی! دوست دارم بدونم که مایکروسافت هم به صورت ذاتی از پایگاه داده هایی که در FireDAC مورد پشتیبانی قرار گرفته با این سطح از قابلیت پشتیبانی میکنه؟!
واقعا این استدلال هایی که میاورید غیر فنی و نسنجیده هست ، الان شما به یک محصول اشاره میکنی و میگی Cantu خوبه ، Embarcadero خوبه چون این Firedac رو به دلفی اضافه کرد ، خوب آفرین ! دولت هم مسکن مهر رو به این مملکت اضافه کرد ، پس همه چیز خوبه !

مایکروسافت Firedac رو کجای دلش بزاره ؟ میخواد چی کار ؟ با داشتن SQL Compact برای چی باید از Firedac استفاده کنه ؟ امیدوارم Firedac رو با SQL Express مقایسه نکنی که زمین تا آسمون فرقشونه ، این لیست Feature های SQL Compact البته قدیمی هست و خیلی از قابلیت های فعلیش داخل نیومده ولی همین هم خوبه :

http://blogs.msdn.com/b/jerrynixon/archive/2012/02/26/sql-express-v-localdb-v-sql-compact-edition.aspx


چند بار هم به جنابعالی گفته ام که بزرگترین موفقیت های دلفی چندین سال بعد از رفتن این شخص بوده است. شکی ندارم که Hejlsberg یک مهندس بزرگ در حوزه نرم افزار است ولی اگر به سال رفتن این شخص دقت کنی میبینی که رفتنش هیچ ربطی به مسائل پیش آمده نداشته است.
Roadmap دلفی رو یک نگاه بنداز ببین چشم اندازی که هلزبرگ تعریف کرده بود چی بود ، و الان چی شده ... اون موفقیت هایی که میگی قریب به 90 % تا دلفی 7 بوده ، که همون چشم انداز مدیریت هلزبرگ بر پروژه بوده که چند بار در موردش و اینکه خیلی از ایده هاش رو مجبور شده تو #C پیاده کنه گفته .



ولی گذشته از شوخی مهمترین شکست برنامه نویسان عزیز تکیه کردن فقط به یک زبان خاص است که این مورد اصلاً کار درستی نیست. از دیدگاه من هر زبانی ویژگی های مثبت و منفی خودش را دارد و هیچ زبانی بهترین برای همه شرایط نیست. مثلاً بنده برای مسائل خاص خودم مجبورم که بیشتر از C++‎‎‎‎‎‎‎‎/Qt و Delphi استفاده کنم و شخص دیگری ممکن است که مجبور باشد از زبانهای دیگری بهره ببرد. آنچه مشخص است این است که نباید فقط بر یک زبان و فریم ورک خاص تکیه زد. از نظر من هم تعصب در مسائلی مثل دین و ناموس و ... است و نه یک ابزار که در مورد ما "زبان برنامه نویسی" است!


برای کسانی که تازه میخوان کار با این زبان رو شروع کنن :

به هیچ عنوان به عنوان آینده شغلی روی این زبان حساب باز نکنید ، دلفی از زبان رفتن Andres Hejlsberg و به خصوص از زمان بورلند به بعد چندین بار ثابت کرده که دیگه نمیتونه مثل قبل قابل اعتماد باشه و عقل سلیم حکم میکنه در این شرایط و با این سیاست ها حداقل تا 2 سال آینده سراغش نرید .
من تو متنی که نوشتم دوستانی که قصد دارن تازه به سمت این زبان بیان رو مورد خطاب قرار دادم و گرنه خودم از اولین افرادی بودم که اینجا کل ، کل سر زبان برنامه نویسی و این مزخرفات رو ممنوع کردم و به خوبی میدونم کی و برای چه کاری باید برم سراغ چه ابزاری :)

میرسیم به این :


آیا این توضیحات باز هم کافی نیست؟
من تا چند وقت پیش ( 1 ، 2 سال پیش ) زیادی جوون بودم و جوگیر و خیلی از دلفی طرفداری میکردم ( البته نه بی دلیل ) و برای خودم دلایلی مثل همین هایی که اینجا مطرح کردید میاوردم ، ولی واقعا دنیا این ها نیست ، من دلفی رو خیلی دوست دارم و زبون بسیار شیرینی میدونمش که ظرفیت! های زیادی داره ، ولی فعلا بالا بری ، پایین بیای به درد سرمایه گذاری نمیخوره به همون دلایلی که گفتم، حرف من تنها نیست ، حرف خیلی از کسایی هم هست که برای خودشون تو حوزه نرم افزار کسی هستند و بعضا بیشتر از من و شما هم باهاش کار کردن ...

بی رودرواسی ، دلفی در حال حاظر جلو قدرت مایکروسافت به چه کنم ، چه کنم افتاده ، سیاست های غلطی که داره به منجلاب میکشش ، سیااست هایی که قصد جذب کاربر جدید توشون دیده نمیشه بلکه قصد داره همین هایی رو که داره 2 دستی بچسبه و از دست ندشون ، Datasnap رو اضافه میکنه و حاظر نیست بگه محصولی در حد WCF نیست چون ممکنه کاربراش به خاطر کارهای Web Base برن سمت مایکروسافت ، iOS Development رو اضافه میکنه و حاظر نیست بگه گند زده چون میترسه کاربراش برن سمت X-Code برای توسعه نرم افزار های موبایلیشون ، میگه دارم رو Android کار میکنم چون یکسری از کاربراش ممکنه برن سمت Java برای تسوعه موبایل ، مارک کانتو برای نسخه بعدی پشنهادات مختلفی میده ( مثلا ORM داخلی برای دلفی ) چرا ؟ چون الان ORM برای برنامه های بانک اطلاعاتی خیلی نیاز هست و روند تسوعه و هزینه رو میاره پایین و میترسه که کاربراش برن سمت Entity Framework مایکروسافت ، سعی میکنه Visual Live Bindings رو معرفی کنه و روش مانور بده چون زبان های دیگه دارن به سمت Delegate و ... میرن که برای تاژ] کارها خیلی مهمه و دوست داری یه سرکی هم اینطرفی کشیده باشه شاید 4 نفر رو به جمع کاربراش اضافه کرد ! بازم بگم ؟!

زمانی میشد سیاست هاش رو مناسب دونست که وقتی یه سیسات خوب اتخاذ میکنه ، سیاست های مضحک رو هم لغو کنه ( همین iOS , Android , Datasnap و ... ) ، با یه دست نمیشه چند تا هندوانه برداشت ، خداشاهده تیم توسعه مایکروسافت که رسما بزرگترین و Expert ترین تیم توسعه دهنده نرم افزار دنیا هست اعتماد به نفس این چند ده برنامه نویس Embarcadeo رو نداره !

Embarcadero وقتی میتونه ادعا بکنه که قابلیت رو تمام و کمال به مشتری تحویل بده و بعد از اون بگه از این به بعد این رو پشتیبانی میکنم و میرم سراغ قابلیت بعدی ! این ساده ترین و روانترین قانون مهندسی نرم افزار هست ! نه اینکه تو هر نسخه چند تا ابلیت بدی و بگی In development line ، و منتظر بازخورد باشی ، برای نسخه بعد لیست 10 تا Fetrue بگی و 3 تاش رو بعد از 1 سال تحویل بدی باقیش رو بگی نسخه بعدی ، تو نسخه بعدی 2 تاش رو ارائه بدی ، اون هم باز ناقص و In development line و ...

بهتره به جای اینکه همش تو خط طرفدارای دلفی بچرخی ، کمی هم بین منتقداش تو نت و ... بگردی ، اونا هم اکثرا روزی کاربرش بودن ، اکثرا منتقدان دلفی Code Gear و Embarcadero رو دروغ گو ترین کمپانی های تکنولوزی میدونن ! ( البته بماند که این تند روی هست ولی در هر صورت ) !

مورد اینکه من درامد خیلی خوبی از دلفی داشتم و دارم و خیی ها رو هم میشناسم که ازش درامد خوبی داشتن و دارن ولی بهش دیگه دل نمیبندن و دارن روی تکنولوژی ها و ابزارهای دیگه سرمایه گذاری میکنن برای آینده ، عمر هر ثانیش هزاران میلیون میارزه ، فکر نمیکنم عاقلانه باشه به امید روزهای بهتر دلفی به پاش بشینیم ، به شخصه در حال حاظر احساس میکنم وقت و انرژی بسیار زیادی که روی دلفی تو طول 3 سال گذاشتم رو اگر به همین اندازه روی زبانی مثل ++C میزاشتم الان درامدم از این هم بیشتر بود ، در هر صورت خدارو شکر ، ولی عقل حکم میکنه که دیگه روش حساب آنچنانی باز نکنم ، حالا یه موقع دیدی ورق برگشت و اواضعش خیلی خوب شد ، ولی در حال حاظر وضعیت این هایی هست که گفتم .

نکته آخر این که چه بخوای ، چه نخوای مجبور میشید برید به این سمت ، دذر حال حاظر پروژه ها از حالت فردی به گروهی تغییر جهت میدن ، وقتی برید چند جا سر کار و برنامه نویس دلفی نباشه مجبور میشید نظرتون رو عوض کنید ، هرچند از نظرتون دلفی خوب باشه ، البته من به این دلیل از دلفی رو برنگردوندم چون به نظر من تو هر کاری جزء بهترین ها باشی برات کار هست ، ولی خوب کار داریم تا کار ، حقوق داریم تا حقوق ، آینده شغلی داریم تا آینده شغلی ...

آقای عشایری من با این روند پاسخگویی شما مشکل دارم ، یک باز دیگه هم تو اون تاپیک مربوط به حداکثر میزان تردها یا همچین چیزی سر یک مورد بحث بود که در آخر مشکل از اینجا ناشی میشد که شما از نحوه تعامل ویندوز با برنامه در Kernel Mode آشنایی ندارید ، در این تاپیک هم چون با ابزارهای مایکروسافتی آشنایی نداشتید سعی کردید دلفی و سیاست هاش رو توجیه کنید ، من دیشب این پست شما رو دیدم و اول گفتم ولش کن باید یه تومار جوابشو بنویسم و بیخیال شدم ، امروز دوباره وقتی چشمم خورد گفتم باید یکسری موارد رو روشن سازی کنم و مجبور شدم تقریبا نیم ساعت از وقتم رو برای این پست بزارم ، این نوع بحث کردن شما نتیجه بخش نیست ، زمانی میتونید وارد این بحث ها بشید که از مزایا و معایب دو طرف بحث باخبر باشید و بشه هر دو طرف رو به چالش کشید تا مخاطب با خوندن بحث بتونه خودش نتیجه گیری کنه نه اینکه بیاید یکسری موارد رو تیتر وار بنویسید و بگید البته من از یک طرف بحث اطلاعی ندارم .


البته من هم قبول دارم که از لحاظ بازار و کار دلفی با مشکل مواجه است ولی فکر نکنم این به خاطر ضعف دلفی باشه .
الان ما در شرکتمون با دلفی داریم پروژه های مختلفی ایجاد می کنیم و با مشکلی هم مواجه نیستیم اون هم با چه ورژنی : دلفی 7
یعنی هنوز متاسفانه وقت نکردیم بریم روی ورزن های جدیدتر . ولی تا حالا که با اون مشکل نداشتیم .
تازه من هرکار کردم که رییس شرکت قبول کنه کمی از کدها را به .net منتقل کنیم به هیچ عنوان قبول نکرد . چون تا حالا که در توسعه مشکلی نداشته .
گفتی ها رو گفتم ، دلیل نمیشه چون رئیس شرکت شما به هر دیلیل صلاح ندیده سوئیچ کنید به یک تکنولوژی و محیط جدید ، معنیش این باشه که همه چیز خوبه و مشکلی نیست ، یاد یه بنده خدایی افتادم حدود 9 ماه پیش با حمید صادقیان و علیرضا مداح رفتیم پیشش برای مذاکره که یک سیستم قول مالی رو براش توسعه بدیم ، برنامه در حد هیولا ، یعنی جز بزرگترین پروژه هایی که تو ایران دیدم با دلفی انجام شده ( شاید بالای 140 تافرم ، و 13 میلیون خط کد تا جایی که یادمه ) ، برنامه رو میدی خوف میکردی ، یکسری باگ داشت که بنی بشری نمیتونست بهشون دست بزنه ، سیستم با دلفی و ابزارهای مرسومش توسعه داده شده بود ، طرف میگفت این برنامه چند صد جای بزرگ دولتی و ... داره کار میکنه ( تنها محصول شرکت ) و ما ازش خوب درامد داریم ، چندین برنامه نویس دلفی رو آورد و همه گفتن پول الکی داری خرج میکنی تا آخر راضی شد سوئیچ کنه به .Net ... ، من 3 روزی اونجا با چند تا برنامه نویس .Net بودم که داشتم مشکل برنامه دلفی رو دیباگ میکردم و اونها هم سیستم جدید روشروع کرده بودن ، اونجا بود که دیدم واقعا n Tier یعنی چی ، ORM یعنی چی ، Source Management یعنی چی ، Team Working Management یعنی چی ...

من هنوز هم میگم ، دلفی ابزار خیلی خوبیه ولی برای کسی که قبلا باهاش کار کرده ، نه براش شروع چون در حال حاظر وقت هدر دادن هست ، من به شخصه برای توسعه ابزارهای مختلفی ازش استفاده میکنم ،ابزارهای دم دستی خودم و نیاز های مختلف شرکت و واقعا در این زمینه توسعه سریع نرم افزار اون هم به صورت Native انتخاب دیگه ای در اختیار نیست ، ولی این برای پروژه های خفن ولی کوچک هست ، مثلا یک ابزار امنیتی ، یک ابزار میدیریتی ، یک ابزار اسکن و یا Honeypot و ... که توسعه اون با انتخاب دیگر ( یعنی ++VC زمانبر هست ) .

مشکل اینجا هست که دقیقا ما فکر میکنیم دلفی یه ابزار همه کاره هست و میتونه تو هر حوزه ای وارد رقابت بشه ، نه ، دلفی فقط یک ابزار توسعه نرم افزارهای Native به صورت RAD هست ، اون هم در حد پروژه هایی که در بالا عرض کردم .

دهنم صاف شد ، غلط های املایی و ... رو ببخشید ، حال ندارم متن رو مرور کنم :)

موفق باشید .

BORHAN TEC
دوشنبه 03 تیر 1392, 20:10 عصر
هر چند که این بحث بسیار طولانی و خسته کننده است. زیرا پارامترهایی که در مقایسه کامل دو زبان با تمام امکاناتش به کار برده می شود بسیار زیاد است...

چیش قابل قیاس با WPF هست ؟! یعنی الان تنها مشکل FireMonkey نسبت به WPF عدم پشتیبانی از راست به چپ برای برنامه های فارسی زبان هست ؟!
هیچ دلیلی وجود نداره که دو تا محصول قابل قیاس از نظر پیاده سازی یکسان باشند. دلیلی داره؟

وقتی به یک قابلیت میگن مزایا که تو محصول هریف وجود نداشته باشه ، این 3D خیلی بهتر از FireMonkey با پشتیبانی از DirectX و ... در WPF وجود داره
جالبه که بدانید که FMX هم DirectX رو پشتیبانی می کنه:
http://blogs.embarcadero.com/ekryukov/2012/10/03/directx-10-in-firemonkey-20/
اما اینکه WPF برای کاربردهای سه بعدی از DirectX استفاده می کنه از یک طرف ضعف به حساب میاد و از یک طرف مزیت. ضعف به خاطر اینکه باعث میشه که WPF حالت Cross Platform نداشته باشه و مزیت از این جهت که DirectX سرعت بالایی داره. جالبه که FMX به صورت Cross Platform است. پس اگه از این دید نگاه کنیم FMX چند سکویی است ولی WPF اینگونه نیست. این رو هم به اون لیست اضافه کن!

کلی کتنابخانه و ابزار متن باز همه جدا براش عرضه شده .
مقدارش رو نمی دونم ولی برای FMX هم کامپوننت های مختلفی وجود داره که از جمله مهمترین تولید کننده آن شرکت tmssoftware است.

XAML
نداره

Animation
داره

Input Levels
نمیدونم منظورت از این مورد چیه. اگه توضیح بدی خیلی بهتره.

- Control templates
این مورد رو هم نمیدونم دقیقاً منظورت چیه. اگه این مورد رو هم توضیح بدی بهتره.

- Layout system
اسمش در FMX این نیست ولی این قابلیتها در FMX وجود داره و خیلی شبیه به قابلیتهایی است که DavidI در فیلمی تحت عنوان FireMonkey 2 Anchors, Flow Layout and Grid Layout به اون اشاره کرده. در مورد Scale هم از همون اول این قابلیت در FMX بوده.

- Styles & Triggers
Style در FMX پشتیبانی میشه ولی نمیدونم که منظور از Trigger در WPF چی هست.

- Dependency properties
من ویدئوی زیر رو در این خصوص مشاهده کردم.
http://www.youtube.com/watch?v=rf-s7SdQpMc
به نظر من این ویژگی به قابلیت های ذاتی .NET ربط داره و نه WPF. مواردی که در فیلم مذکور وجود داره همگی با بهره گیری از ویژگی های ذاتی دلفی از قبیل Live Bindings Scripting Engine و RTTI قابل انجام است و اصلاً هم عجیب و غریب نیست.

یکسری کامپوننت درب و داغون که Eugene Kryukov با نام VG Scene توسعه میداد که همه تو دنیا بهش میخندیدن و هیچ کاربرد خاص عملی تو پروژه های تجاری نداشت یه احمقی به خاطر سیاستاش ( نجات از منجلابی که توش گیر کرده ) اومده خریده و اسمش رو گذاشته FireMonkey و حالا دارید این رو با WPF که حاصل کار چندین هزار نفر / ساعت کار مهندسی و علمی هست مقایسه میکنید ، اون هم چی ، تیم طراحی و توسعه WPF مایکروسافت در مقایسه با یک برنامه نویس روس یا نه اصلا تیم توسعه Firemonkey در Embarcadero شاید هم کل تیم توسعه RAD Studio !
قرارمون بحث فنی بود. یعنی یادت رفت؟ :لبخندساده:

پروژه هایی که با WPF طراحی شدن روز به روز دارن بیشتر میشن ، پروژه های بزرگ و تجاری که تو کل دنیا دارن استفاده میشن ، یه همچین پروژه ای رو در حال حاظر با ابزارهای Embarcadero معرفی کنید ... :)
دلیلی نداره که من لیست برنامه های بزرگ ساخته شده با FireMonkey رو ببینم. یکیش که لینکش رو پیدا کردم اینه:
http://edn.embarcadero.com/article/39795
موارد دیگری هم دیده بودم که الان یادم نیست که اسمشون چی بود. شما هم چند مورد معرفی کن!

در مورد Visual Live Bindings که یک ابزار کاملا Fun برای Invitation For Kids هست که به یه بچه نشون بدی بگی ببین چقدر باحالاه ، 4 تا کلیک میکنی برنامه ساخته میشه ! خوب که چی ؟ این برای زمانی هست که دلفی در بورلند توسعه داده میشد و اینقدر از زبان های همرده خودش غنی تر و جامع تر بود که دیگه نمیدونستن چه جرندیاتی بهش اضافه کنن ... نه الان که تو بازار نرم افزار به فراموشی سپرده شده ...
یاد یکی از برنامه های صبح جمعه با شما افتادم که یک بنده خدایی هر کاری که می کرد و نمیکرد، یکی بود که بهش گیر بده. اگه سازندگان دلفی این قابلیت رو اضافه نمی کردند کلی شاکی می شدی و حالا هم که اضافه کردند میگی که چیز خاصی نیست. یادمه که آقای کشاورز از نحوه استفاده از Live Bindings در XE2 شاکی بود. خوب سازندگان دلفی هم در نسخه XE3 این مشکل رو حل کردند. بد کردند؟

در مورد iOS هم که واقعا من نمیدونم رو چه حساب با من موافق نیستید ، شما تال به حال برای iDevice ها برنامه نویسی کردید ؟! با محیط X-Code آشنایی دارید ؟! به این جنگولک بازی ها میگین محیط توسعه برای iOS ؟! یعنی واقعا فکر میکنید برنامه هایی مثل Awesome Note یا Pinnacle Studio رو میشه با این محیط مزخرفی که Embarcadero طراحی کرده میشه طراحی کرد ؟ یا میشه بهش امید داشت به این جا برسه ؟! تازه این ها برنامه های متوسط APP Store هستند ، مگه یک نفر مریضه یه برنامه رو با Delphi برای iOS توسعه بده ، بعد بیاد روی X Code کامپایلش کنه تا بتونه رو یک iDevice اجراش کنه .
من زیاد با محیط xcode کار نکردم چون تخصص من بیشتر در حوزه Android است. شما یک شرکت مثل Embarcadero رو داری با چند شرکت مثل Apple و Microsoft مقایسه می کنی و دائم میکوبی. خوب این کاملاً طبیعی است که هر محیط و ابزاری با ابزارهای مشابه متفاوت باشد. به نظرم در خصوص ساخت برنامه ها با Mobile Studio کمی زود است که بخواهیم قضاوتی کنیم. چون هنوز منابع خیلی زیادی در این خصوص منتشر نشده است و بهترین منبع موجود بررسی فیلمهای CodeRage Mobile Studio برای قضاوت است.

مایکروسافت Firedac رو کجای دلش بزاره ؟ میخواد چی کار ؟ با داشتن SQL Compact برای چی باید از Firedac استفاده کنه ؟ امیدوارم Firedac رو با SQL Express مقایسه نکنی که زمین تا آسمون فرقشونه ، این لیست Feature های SQL Compact البته قدیمی هست و خیلی از قابلیت های فعلیش داخل نیومده ولی همین هم خوبه :

http://blogs.msdn.com/b/jerrynixon/a...t-edition.aspx
فکر می کنم که منظورم رو متوجه نشدی. منظور من FireDAC است و نه FireBird! محصول FireDAC با ADO و ADO.NET و dbExpress قابل مقایسه است. بنده به شخصه تا کنون هیچ ابزاری را در این خصوص بهتر از FireDAC ندیده ام. از لحاظ امکانات، سرعت، پایداری و راحتی استفاده. اگر هم نخواهیم مستقیم وارد نوشتن دستورات SQL شویم محصول TMS Aurelius از FireDAC پشتیبانی می کند. اگر هم بخواهیم FireBird را با SQL Compact مقایسه کنیم بعید می دانم که حرفت درست باشه.

در مورد Datasnap هم قبلا بهتون گفتم ، در حال حاظر WCF داره جلوتر ازش حرکت میکنه ، و در مورد سرعتش هم بدبختی چیزی نیست که بشه ازش چشم پوشی کرد ، WCF که از درایور کرنل مد HTTP.sys استفاده میکنه کجا و پیاده سازی های Indy که در Datasnap استفاده شده کجا
در مورد سرعت قبلاً در همون تاپیک جنجالی تردها گفتم که میشه از mORMot استفاده کنم و شما کلی شاکی شدی. خوب برای حل این مشکل اگه میگی کسی نیست که به سوالات مربوط به mORMot جواب بده میتونی از DataAbstract استفاده کنی. DataAbstract به صورت ذاتی از mORMot پشتیبانی میکنه(اگه به داخل ویزاردش دقت کنی گزینه Synopse رو میبینی). باید بگم که Synopse هم از HTTP.sys پشتیبانی می کنه. البته استفاده از این قابلیت نیازمند اینه که حداقل از ویندوز XP Service Pack 2 استفاده بشه.

به جز اون موراد زیادی هست که فاصله این دو ابزار رو روز به روز زیادتر میکنه .
یعنی شما به هر دوی این ابزارها به صورت حرفه ای کار کردی که این حرف رو میزنی؟ اگه بگی بله ازت تست میگیرما! :لبخندساده:

دلیل نمیشه کسی که کتاب های خوبی نوشته بتونه مدیر خوبی هم باشه
دلیلی نداره. ولی آیا دلیلی داره که کسی که کتاب ننوشته بتونه یک مدیر خوبی باشه؟ یعنی نمیشه که یک نفر هم کتاب نوشته باشه و هم مدیر خوبی باشه. شخصی که کتابهای درست و حسابی می نویسه مجبوره که تحقیقات زیادی انجام بده و به نظر من هم ماکو یکی از بهترین انتخابها در این خصوص بوده است. مارکو واقعاً یک پل قوی بین سازندگان دلفی و مشتری ها است. من در چند مورد پیشنهاداتی را به مارکو داده ام و اصلاً هم فکر نمی کردم که اینقدر با جدیت موضوع رو پیگیری کند. تعدادی از همین موارد در Inbox من موجود است.

نه اینکه Bug ریپورت کنی و بعد از 4 سال کمپانی محترم Delphi هنوز نیم بیشتری از باگ ها رو رفع نکرده باشه و یک بیلاخ حواله آدم کنه .
متاسفانه این مشکل در دلفی وجود دارد و برای من هم اثبات شده که به رفع باگها زیاد توجه نمی کنند و این یکی از ضعف های بزرگ در مورد دلفی است که EmbT حتماً باید بیشتر به این موارد رسیدگی کند. :افسرده:

واقعا این استدلال هایی که میاورید غیر فنی و نسنجیده هست ، الان شما به یک محصول اشاره میکنی و میگی Cantu خوبه ، Embarcadero خوبه چون این Firedac رو به دلفی اضافه کرد ، خوب آفرین ! دولت هم مسکن مهر رو به این مملکت اضافه کرد ، پس همه چیز خوبه !
بحث رو سیاسی نکن! یعنی به نظرت خرید یک محصول سیاست بدی هستش. این همه شرکت در دنیا هست که این کار رو میکنه. اوراکل، سان رو خرید. Adobe شرکت Macromedia رو خرید و ... . این مورد که سیاست خیلی خوبی است. چه مشکلی داره که یک شرکت محصول معروفی رو بخره و در محصول خودش قرار بده؟

که ظرفیت! های زیادی داره ، ولی فعلا بالا بری ، پایین بیای به درد سرمایه گذاری نمیخوره به همون دلایلی که گفتم، حرف من تنها نیست ، حرف خیلی از کسایی هم هست که برای خودشون تو حوزه نرم افزار کسی هستند و بعضا بیشتر از من و شما هم باهاش کار کردن ...
باز هم که بحث رو سیاسی کردی! ظرفیت!؟
به نظر من دلیل نمیشه. دنیا هزاران متخصص نرم افزار بزرگ داره. هر کسی ایده های خودش رو داره و با هزاران ایده متفاوت و این کاملاً طبیعی است که هر کسی نظرات متفاوتی داشته باشد. موضوع اینجاست که در همه جا مخالفان سر و صدای بیشتری به راه می اندازند!

بی رودرواسی ، دلفی در حال حاظر جلو قدرت مایکروسافت به چه کنم ، چه کنم افتاده ، سیاست های غلطی که داره به منجلاب میکشش ، سیااست هایی که قصد جذب کاربر جدید توشون دیده نمیشه بلکه قصد داره همین هایی رو که داره 2 دستی بچسبه و از دست ندشون ، Datasnap رو اضافه میکنه و حاظر نیست بگه محصولی در حد WCF نیست چون ممکنه کاربراش به خاطر کارهای Web Base برن سمت مایکروسافت ، iOS Development رو اضافه میکنه و حاظر نیست بگه گند زده چون میترسه کاربراش برن سمت X-Code برای توسعه نرم افزار های موبایلیشون ، میگه دارم رو Android کار میکنم چون یکسری از کاربراش ممکنه برن سمت Java برای تسوعه موبایل ، مارک کانتو برای نسخه بعدی پشنهادات مختلفی میده ( مثلا ORM داخلی برای دلفی ) چرا ؟ چون الان ORM برای برنامه های بانک اطلاعاتی خیلی نیاز هست و روند تسوعه و هزینه رو میاره پایین و میترسه که کاربراش برن سمت Entity Framework مایکروسافت ، سعی میکنه Visual Live Bindings رو معرفی کنه و روش مانور بده چون زبان های دیگه دارن به سمت Delegate و ... میرن که برای تاژ] کارها خیلی مهمه و دوست داری یه سرکی هم اینطرفی کشیده باشه شاید 4 نفر رو به جمع کاربراش اضافه کرد ! بازم بگم ؟!
اینهایی که گفتی ضعف نیست عزیز دل. این رقابته! خوب شما اگه یک برنامه بنویسی آیا ولش می کنی؟ چرا براش آپدیت میدی و قابلیتهایی رو بهش اضافه می کنی؟ خوب برای اینکه بتونی در بازار رقابت باقی بمونی دیگه. غیر از اینه؟ مایکروسافت هم WPF رو توسعه میده که کاربرانش نرن سراغ یک محصول دیگه. WCF رو توسعه میده که کاربراش نرن سراغ یک محصول دیگه. ویندوز رو توسعه میده که کاربرانش نرن سراغ MAC OS و لینوکس. به نظرت مایکروسافت و EMBT نباید به توسعه محصولاتشون ادامه بدن؟

زمانی میشد سیاست هاش رو مناسب دونست که وقتی یه سیسات خوب اتخاذ میکنه ، سیاست های مضحک رو هم لغو کنه ( همین iOS , Android , Datasnap و ... ) ، با یه دست نمیشه چند تا هندوانه برداشت
در رقابت جهانی آدم مجبور میشه که با یک دست به جای ده تا هندوانه، صد تا برداره. این مورد در بازار جهانی کاملاً عادی است چرا که رقابت بسیار سنگین است و شرکتها هم بسیار قدرتمند هستند و مشتری ها هم بسیار با سواد که اگر کوتاهی کنی اونقدر بهت انتقاد می کنن که دوست داری برنامه نویسی رو کنار بزاری و بری بنایی! به نظر من شما در این خصوص هنوز از نزدیک مسائل رو درک نکردی. اینکه یک برنامه رو برای یک شرکت خاص بنویسی خیلی فرق داره با اینکه بخوای برنامه رو برای کلی مشتری واقعاً با سواد بسازی. در رقابت جهانی مجبوری که لیست قابلیتها رو زیاد کنی و باید از کدهایی که قبلاً نوشتی به بهترین شکل ممکن استفاده کنید. خوب موقعی که FMX به صورت Cross Platform طراحی شده و شرکت توانایی زیادی در ساخت کامپایلر داره چرا نباید به شکل جدی به حوزه چند سکویی بپردازه؟
در خصوص DataSnap که در این لیست آوردی باز هم میگم که اشتباه می کنی. درسته که از لحاظ سرعت به WCF نمیرسه ولی در مسائل Enterprise علاوه بر فاکتور سرعت مسائل زیاد دیگری هم مطرح است. در شرکت ما زمانهایی پیش می آید که 400 کاربر همزمان داریم و با اینکه برنامه سرور با DataSnap طراحی شده است با هیچ مشکلی مواجه نشده ایم. آن مقاله ای هم که به بررسی سرعت ها می پرداخت اشتباه است و وضعیت اینقدر هم فاجعه بار نیست. در DataSnap یک قانون کلی وجود دارد و آن هم این است که "اگر سیستم عامل سرور شما 64 بیتی است برنامه سرور باید به صورت 64 بیتی کامپایل شود و اگر سیستم عامل سرور 32 بیتی است برنامه سرور باید به صورت 32 بیتی کامپایل شود. به عبارتی استفاده از برنامه سرور 32 بیتی در ویندوز 64 بیتی ممنوع(به خاطر مسئله Emulation)!" . به جرئت ادعا می کنم که در ایران بنده جزو افرادی هستم که بیشترین تست های ممکن را بر روی DataSnap انجام داده ام و با توجه به تجربیاتم یقین دارم که در آن مقاله از کامپایلر 32 بیتی در ویندوز 64 بیتی استفاده شده است و تمامی نتایج به دست آمده هم به همین دلیل بوده است. اگر در آن تست دقت کنید خواهید دید که فقط از یک زبان Native استفاده شده است.

خداشاهده تیم توسعه مایکروسافت که رسما بزرگترین و Expert ترین تیم توسعه دهنده نرم افزار دنیا هست اعتماد به نفس این چند ده برنامه نویس Embarcadeo رو نداره !
قرار شد که بحث فنی باشه. درسته؟

Embarcadero وقتی میتونه ادعا بکنه که قابلیت رو تمام و کمال به مشتری تحویل بده و بعد از اون بگه از این به بعد این رو پشتیبانی میکنم و میرم سراغ قابلیت بعدی ! این ساده ترین و روانترین قانون مهندسی نرم افزار هست ! نه اینکه تو هر نسخه چند تا ابلیت بدی و بگی In development line ، و منتظر بازخورد باشی ، برای نسخه بعد لیست 10 تا Fetrue بگی و 3 تاش رو بعد از 1 سال تحویل بدی باقیش رو بگی نسخه بعدی ، تو نسخه بعدی 2 تاش رو ارائه بدی ، اون هم باز ناقص و In development line و ...
در این مورد کاملاً حق با شماست و بهتر است که EmbT سیاستهای خود را در این خصوص اصلاح کند. ولی باید قبول کرد که هیچ محصولی بدون بازخورد کامل نمی شود، حتی اگر 10 سال هم روی آن کار کرده باشند.

بهتره به جای اینکه همش تو خط طرفدارای دلفی بچرخی ، کمی هم بین منتقداش تو نت و ... بگردی ، اونا هم اکثرا روزی کاربرش بودن ، اکثرا منتقدان دلفی Code Gear و Embarcadero رو دروغ گو ترین کمپانی های تکنولوزی میدونن ! ( البته بماند که این تند روی هست ولی در هر صورت ) !
گشتم. قبول دارم که EmbT برخی از سیاستهایش ضعف دارد. ولی شما میتونی یک شرکت بزرگ رو مثال بزنی که منتقد نداشته باشد؟ اصلاً میشه؟ داریم؟

فکر نمیکنم عاقلانه باشه به امید روزهای بهتر دلفی به پاش بشینیم
قبل از XE2 هم خیلی ها این حرف رو میزدند. ولی باید یک مقدار هم منصفتر باشیم. EmbT این روزها بر روی پروژه هایی دست گذاشته که اسماً یک جمله هستند ولی پیاده سازی اونها بسیار دشوار است. مثلاً ایجاد ابزاری برای ساخت برنامه ها برای iOS و Android"! طبیعی است که انجام این کارهای سنگین در مدت زمان کوتاه بسیار دشوار است. به نظر من انرژی ای که برای ساخت چنین امکاناتی صرف می شود اصلاً با ساخت یک ORM و ... قابل مقایسه نیست.

آقای عشایری من با این روند پاسخگویی شما مشکل دارم
من هم با نحوه پاسخگویی شما مشکل دارم. دقت کن که با نحوه پاسخگویی شما و نه با شخص شما.:لبخندساده:

یک باز دیگه هم تو اون تاپیک مربوط به حداکثر میزان تردها یا همچین چیزی سر یک مورد بحث بود که در آخر مشکل از اینجا ناشی میشد که شما از نحوه تعامل ویندوز با برنامه در Kernel Mode آشنایی ندارید
من به این موضوع آشنا بودم که برنامه های 32 بیتی در ویندوز 64 بیتی Emulate میشه. ولی یادم نمیاد که اونجا هم بعد از کلی بحث و بررسی به موردی که بنده به عنوان نتیجه گیری اشاره کردم اشاره کرده باشید. بعدش هم خودتون گفتید که باید برم و دوباره کتاب Windows Internals رو بخونم(و یا چیزی شبیه به این جمله). :چشمک: مشکل اصلی من در اونجا این بود که این Emulate کردن خیلی خیلی بیش از حد انتظار کارایی رو کاهش میده. گذشته از این حرفها ،به نظر من شما کمی در پاسخ دادن تند روی می کنید.:ناراحت: به نظر من در این خصوص باید کمی در رفتارتان تجدید نظر کنید و با اعتدال بیشتری نظرات خود را بیان کنید. من اینجا از کسی و یا گروهی دفاع نمی کنم. من می گویم که اگر شرکت و یا گروهی یکسری نقاط ضعف دارند دلیل نمیشه که آدم از حد اعتدال خارج بشه و تمام نقاط مثبتشون رو نادیده بگیره.

در طول این چند سال متوجه شده ام که اینگونه بحث ها نتیجه خاصی ندارد و بهتر است که دیگر این بحث را ادامه ندهیم و وقتمان را برای مسائل مهمتری بگذاریم، چون شرکت در این بحث ها ساعت ها زمان می برد. به جای این بحث ها بهتره که در مسائلی مثل اینکه یک کامپایلر خوب باید چه ویژگی هایی داشته باشه؟ و یا اینکه مثلاً یک ORM خوب باید چه ویژگی هایی داشته باشه و ... بحث کنیم تا یه چیزی هم یاد بگیریم.

اگر با خاتمه این بحث موافقی بهتره که تاپیک رو قفل کنی. موافقی؟ :چشمک:

Felony
دوشنبه 03 تیر 1392, 21:01 عصر
یاد یکی از برنامه های صبح جمعه با شما افتادم که یک بنده خدایی هر کاری که می کرد و نمیکرد، یکی بود که بهش گیر بده. اگه سازندگان دلفی این قابلیت رو اضافه نمی کردند کلی شاکی می شدی و حالا هم که اضافه کردند میگی که چیز خاصی نیست.
من نمیگم چیز بدیه ، من میگم تو این زمان تصمیم بدی هست ، کارهای بزرگتری باید مورد توجه قرار بگیره .


فکر می کنم که منظورم رو متوجه نشدی. منظور من FireDAC است و نه FireBird! محصول FireDAC با ADO و ADO.NET و dbExpress قابل مقایسه است. بنده به شخصه تا کنون هیچ ابزاری را در این خصوص بهتر از FireDAC ندیده ام. از لحاظ امکانات، سرعت، پایداری و راحتی استفاده. اگر هم نخواهیم مستقیم وارد نوشتن دستورات SQL شویم محصول TMS Aurelius از FireDAC پشتیبانی می کند. اگر هم بخواهیم FireBird را با SQL Compact مقایسه کنیم بعید می دانم که حرفت درست باشه.
بله ، من اشتباه دیدم ، چون متن طولانی بود داشتم زود پاسخ میدادم ، اینطوری به نظرم بدتر شد D: ، الان شما میگی تا الان هیچ ابزاری بهتر از این ندیدی ، مگه با ADO.Net و Entity Framework کار کردی ؟


در رقابت جهانی آدم مجبور میشه که با یک دست به جای ده تا هندوانه، صد تا برداره.


خداشاهده تیم توسعه مایکروسافت که رسما بزرگترین و Expert ترین تیم توسعه دهنده نرم افزار دنیا هست اعتماد به نفس این چند ده برنامه نویس Embarcadeo رو نداره !
گفتم که ! آدم اندازه دهنش لقمه بر میداره ، این موضوع کاملا روشنی هست ، اگر 2 تا ابزار درست و حسابی تحویل بده بهتر از 10 تا ابزار ناقص هست که نمیشه از هیچ کدوم درست و حسابی استفاده کرد .


یعنی شما به هر دوی این ابزارها به صورت حرفه ای کار کردی که این حرف رو میزنی؟ اگه بگی بله ازت تست میگیرما!
دیدم دست مردم ...
تو محلی که که کار میکنم دسوتان زیادی از این ابزارها استفاده میکنن و مدت هاست در مورد مزایا و معایب هر کدوم ازشون جداگانه سوال میکنم و خروجی کارشون رو میبینم ، خودم هم کم و بیش دارم کار میکنم .


من به این موضوع آشنا بودم که برنامه های 32 بیتی در ویندوز 64 بیتی Emulate میشه. ولی یادم نمیاد که اونجا هم بعد از کلی بحث و بررسی به موردی که بنده به عنوان نتیجه گیری اشاره کردم اشاره کرده باشید. بعدش هم خودتون گفتید که باید برم و دوباره کتاب Windows Internals رو بخونم(و یا چیزی شبیه به این جمله).
عجب !!!
من گفتم این تاپیک علاقمو به این کتاب بیشتر کرد و تصمیم دارم بیشتر بخونمش ... مباحثی که خوندم دقیقا در ذهنم هست ، نیازی به مطالعه مجدد نیست :)

ولی این چیزی از موضوع کم نمیکنه ، تو اون تاپیک شما روی موضوعی پافشاری میکردید که من براش کلی دلیل و مدرک مستند آوردم ولی شما گیر داده بودی این باگ هست ! در صورتی که نیست ، که نیست ، که نیست ...


به نظر من در این خصوص باید کمی در رفتارتان تجدید نظر کنید و با اعتدال بیشتری نظرات خود را بیان کنید.
این نظر شخصی من هست ، حالا اگر تند بیان میکنم از دوستان معذرت میخوام ، ولی این نظر فعلی من هست ، براش کلی دلیل دارم و فعلا با این روند کسی نتونسته منو قانع کنه که اشتباه فکر میکنم .

در هر صورت الان دوستان با این چند پست خودشون مختار هستن که در مورد آیندشون تصمیم گیری کنن ، من و شما تکلیف خودمونو میدونیم :)

یاحق .

BORHAN TEC
دوشنبه 03 تیر 1392, 22:17 عصر
بله ، من اشتباه دیدم ، چون متن طولانی بود داشتم زود پاسخ میدادم ، اینطوری به نظرم بدتر شد D: ، الان شما میگی تا الان هیچ ابزاری بهتر از این ندیدی ، مگه با ADO.Net و Entity Framework کار کردی ؟
با ADO .NET کار کرده ام. Entity Framework هم یک ORM است و نباید اون رو با FireDAC مقایسه کرد. FireDAC می تواند یک زیربنای بسیار قوی برای یک ORM باشد ولی خودش ORM نیست. Entity Framework با محصولاتی از قبیل DORM و Aurelius قابل قیاس است.
حالا که صحبت فایربرد شد، یک توضیح اضافی در مورد Firebird: پروژه Firebird تا به امروز هیچ ارتباطی به Embarcadero ندارد و یک پروژه متن باز و رایگان است که توسط یک گروه مستقل و البته قوی توسعه داده می شود. پیشنهاد می شود که کاربران Interbase به Firebird مهاجرت کنند، چرا که متاسفانه در حال حاضر هیچ تیمی برای Interbase وجود ندارد و فقط یک نفر آن را توسعه می دهد. از دیدگاه من Interbase مرده است و نباید روی آن سرمایه گذاری کرد.:ناراحت:

عجب !!!
من گفتم این تاپیک علاقمو به این کتاب بیشتر کرد و تصمیم دارم بیشتر بخونمش ... مباحثی که خوندم دقیقا در ذهنم هست ، نیازی به مطالعه مجدد نیست :)
شرمنده، انسان فراموشکاره! :اشتباه:

شما گیر داده بودی این باگ هست !
منظورم از کلمه باگ، Performance خیلی پایین بود. اگه پستهای من رو در اون تاپیک بخونید متوجه میشین. Performance Bug!!! :چشمک:

در هر صورت الان دوستان با این چند پست خودشون مختار هستن که در مورد آیندشون تصمیم گیری کنن ، من و شما تکلیف خودمونو میدونیم :)
آره، موافقم. اینطوری بهتره. کلاً بی خیال... :لبخندساده:
بهتره که تاپیک رو هم قفل کنی.

یا علی. :قلب: