مثل همیشه no comment ه.:لبخند:
باور کنید نظرسنجی کار نمیکنه.
Printable View
مثل همیشه no comment ه.:لبخند:
باور کنید نظرسنجی کار نمیکنه.
درحال حاضر دارم دات نت میخونم (با سی شارپ).
فریمورک+زبان خوبیه. طراحی و سازماندهی عالی ای داره.
ولی خب چون یه مقدار در انحصار مایکروسافت هست خیلی نمیتونم دوستش داشته باشم.
بعضی چیزا خیلی هوشمندانه و استادانه درست شدن، اما وقتی به بشریت اهدا نشده، دیگه برای دیگران ارزش چندانی نداره. علم وقتی زیبا و ارزشمند هست که به یکسان در اختیار همگان گذاشته بشه، نه اینکه با خودخواهی برای ایجاد انحصار و کسب درآمد صرف بکار بره. البته من نمیگم به هیچ وجه این حق رو ندارن، اما بهرحال اون زبانها و ابزارها و علومی که کاملا آزاد هست خیلی فرق دارن.
از دلفی استفاده میکنم و با تمام وجود دوسش دارم و بهش افتخار میکنم ، البته بماند که تو این چند سال اخیر دچار یکسری بحران و سیاست های نادرست شده و مثل قبل یکه تاز نیست ولی در هر صورت هنوز دلفیه و هنوز هم حرف های زیادی برای گفتن داره و دوباره یه استارت هایی برای به اوج رسیدن زده ، تا ببینیم چی میشه ...
C++ , vb.net از هر دو راضیم البته vb کرک شدش خیلی میچسپه.آدم دوست داره گوشیه تلفن رو برداره به آقای بیل زنگ بزنه بگه من vs2010 رو از بازار با قیمت 300 تومان رایت کردم .ببینید طرف چه حالی بهش دست میده!
حالا از شوخی گذشته C++ یه چیز دیگس و خیلی روان و هر جا میشه ازش استفاده کرد گیر و دار فریمورک هم نداره تا دلتم بخواد کتاب آموزشی رایگان داره!
VB6 - JAVA جفتشونو یه روز نبینم افسردگی پیدا می کنم
VB قدیما
C#.NET بیشتر از همه
VB.NET اگر تو یک پروژه دات نتی لازم بشه
C++ همیشه، همه وقت، همه جا ...
کمی جاوا
کمی F#
Matlab واسه کارای مهندسی
ولی C++ کلا یه چیز دیگس... وقتی همه کم میارن C++ با قدرت پیشتازه...
دلفی : جدیداً علاقه مند شدم .
پایتون عشق منه
هم مفسر داره هم کامپایلر
سادگی و شیرینی این زبون وصف نشدنی
هرکاری هم که بگی با این زبون میشه کرد از هک گرفته تا برنامه های با پردازش های سنگین و هر چیزی که فکرش رو بکنین.
برای من چند تا فاکتور هست که هر زبانی اونهارو داشته باشه عاشقشم .
1- پولساز و به درد بخور باشه
2- دامنه ی موارد استفادش گسترده باشه
3-به این سادگی ها از دور خارج نشه
به نظر من جاوا , cpp این خصوصیت رو داره اما در حال حاضر سی شارپ کار میکنم اما خوشم نمیاد چون قدرت مانور بالایی نداره . این تصویر باحال هم تقدیم شما . اگر زبانها ابزار بودند...
فقط به C++ فکر میکنم، علاقهٔ من تا همین حد بود :لبخندساده:
دلفی، خیلی زیاد!
C#, خیلی کم.
C# و دات نت از نظر طراحی/ساختاری واقعا عالی هستن.
بنده سی++ و حتی با Qt هم کار کردم. اصلا به سی شارپ و دات نت نمیرسن.
حالا منو بگید یه چیزی که میگم نمیتونم سی شارپ رو کاملا دوست داشته باشم چون تحت نفوذ میکروسافت هست و آزاد بودنش در هاله ای از ابهام واقع شده، ولی تعجب میکنم اونایی که این مسائل رو نمیدونن یا بهش اهمیت نمیدن چطور نمیگن سی شارپ و دات نت بهترین هستن!
واقعا علتش چیه؟!
من قبلا qbasic - pascal -cpp -vb6 - delphi7 - asmble رو واقعا هر کدومشون رو توی یه مقطع خاص امتحان کردم ، همشون عالی بودند ، حتی QBasic که کلی خاطره ازش دارم.
ولی الان C# و ASP.NET کار می کنم و واقعا خیلی زیاد به دلایل زیر :
چند منظوره بودن + راحتی در توسعه + موم بودن توی دست در هنگام برنامه نویسی (به دلیل توسعه از روی C ) + امکانات بالای برنامه نویسی + پشتیبانی فنی (کافیه یه سرچ تو گوگل بزنی) و ...
پست بدون کامنت نمی شه؟!:چشمک:
موفق باشی.
از چه لحاظی ؟!نقل قول:
بنده سی++ و حتی با Qt هم کار کردم. اصلا به سی شارپ و دات نت نمیرسن.
بهترین ؟!نقل قول:
حالا منو بگید یه چیزی که میگم نمیتونم سی شارپ رو کاملا دوست داشته باشم چون تحت نفوذ میکروسافت هست و آزاد بودنش در هاله ای از ابهام واقع شده، ولی تعجب میکنم اونایی که این مسائل رو نمیدونن یا بهش اهمیت نمیدن چطور نمیگن سی شارپ و دات نت بهترین هستن!
واقعا علتش چیه؟!
بهترینی وجود نداره ، هر ابزار برای کار خاصی هست ، شما تا صبح قیامت هم نمیتونی با #C یه بازی 3 بعدی بنویسی یا برای سیستم های Embedded یا پردازش تصویر سنگین ازش استفاده کنی ، یا کد native بزنی !
از چه لحاظ؟
خب از همه لحاظ. یا از بیشتر لحاظ :لبخند:
زبانهای برنامه نویسی از چه نظرهایی مهم هستن؟
زبانهای سطح بالاتر و فریمورک ها برای چی ایجاد میشن و بهبود چه جنبه هایی رو مد نظر دارن؟
بیشتر اینا در سی شارپ و دات نت به تعادل و کیفیت بالایی رسیده که در زبانها و فریمورک های دیگه دیده نمیشه.
البته باید حیطهء برنامه نویسی مورد نظر رو اپلیکیشن نویسی عمومی درنظر بگیریم. چون هر زبان و فریمورک معمولا یه دایرهء تمرکز داره که هدف اصلیش یا اولویت اولش پاسخگویی اونه و برای اون بهینه و مناسبه. هرچند این دایره میتونه خیلی وسیع باشه، ولی حتی در فریمورک ها و فناوریهای خیلی وسیع یا همه منظوره هم، معمولا یک یا چند دایره وجود داره که بهینگی اون فریمورک و زبان و فناوری در اون دایره (ها) بیشتر هست. خلاصه این یه امر نسبی هست. این دایره (ها) میتونه وسیع یا کوچک باشه.
مثلا جاوا با اینکه از نظر تئوریک تقریبا همه منظوره و مستقل از پلتفرم هست، اما عملا در خیلی کاربردها ترجیح کمتری نسبت به بعضی زبانها و فریمورک های دیگه داره. مثلا در وب درحد کوچک و متوسط واقعا انتخاب معقولی بنظر نمیرسه و در این حیطه PHP و دات نت خیلی فراگیرتر هستن. یا در مرورگر وب، یعنی برنامه نویسی سمت کلاینت، فلش جای جاوا رو گرفت. حتی در دسکتاپ هم کاربرد جاوا خیلی زیاد نیست (حداقل در ویندوز؛ شما چه تعداد برنامه های جاوای بزرگ و معروف روی ویندوز در مقابل چند برنامهء بزرگ و معروف غیرجاوا دیدید؟).
بله در بالا اشاره کردم.نقل قول:
بهترین ؟!
بهترینی وجود نداره ، هر ابزار برای کار خاصی هست ، شما تا صبح قیامت هم نمیتونی با C# یه بازی 3 بعدی بنویسی یا برای سیستم های Embedded یا پردازش تصویر سنگین ازش استفاده کنی ، یا کد native بزنی !
منظور بیشتر اپلیکیشن نویسی PC هست.
و خودتون میدونید که این حیطه کاربرد و برنامه نویسان خیلی زیادتری از خیلی زمینه های دیگه داره. حداقل بین آحاد برنامه نویسها.
ضمنا من الان اومده بودم یه تاپیک درمورد پورت شدن نسخه های جدید اپلیکیشن های معروف بزنم. مثلا اتوکد 2011 رو من دیدم ظاهرا با دات نت هست، یا نرو همینطور، بعید نیست چند وقت دیگه فتوشاپ تحت دات نت هم ببینیم، اینها خودش نشون میده دات نت پلتفرم مناسبی تشخیص داده شده (یا شاید اینطور بگیم که حرکت به سمت اون ناگزیر عاقلانه ترین گزینه برای آینده هست) و ضمنا کاراییش درحدی هست که این برنامه های مفصل پیشرفته و بعضا درگیر با گرافیک و سه بعدی رو جواب بده (البته قبول دارم بازی نیاز به پرفورمنس بالاتری داره).
native کد نوشتن که به خودی خودش هدف نیست و ضرورتی نداره.نقل قول:
یا کد native بزنی
باید پرسید کجا و چرا باید native کد بزنیم.
چیزی که مشخصه اهمیت و گستردگی کاربرد کدنویسی native روز به روز درحال کمتر شدن هست.
این مسئله در خیلی زمینه ها پیش از این اتفاق افتاده و نسل کدنویسی native در خیلی حیطه ها تقریبا منقرض شده.
البته این دلیل بر ضروری نبودن وجود امکان کدنویسی native نیست به هیچ وجه. ولی بطور کلی در اپلیکیشن نویسی، زبانهای تفسیری و بایت کدی و محیط managed و غیره روز به روز جای کدنویسی native رو گرفتن و امتحان خودشون رو پس دادن و موفق بودن.مثلا در وب دیگه کمتر جایی native کد نوشته میشه. این مسئله بنظرم اول و بیشتر و سریعتر در وب خودش رو نشون داد، اما داره با دات نت اساسا دسکتاپ رو هم تسخیر میکنه.
اینکه میگید کد زنی native یعنی چی ؟
تاجایی که من میدونم منظور از کدزنی native اینه که برنامهء نهایی شما یه فایل اجرایی باینری هست که مستقیما توسط CPU اجرا میشه و نیاز به یک مفسر، ماشین مجازی یا محیط مکملی که اجراش رو اساسا کنترل میکنه (فکر میکنم دات نت به اینصورت هست) نداره. یعنی کد ماشین واقعی و مستقل تولید میکنه.
دیگه چطوری بگم، مثلا یه کد native خیلی ساده رو درنظر بگیرید که از اجزای سیستم عامل مثل سرویسهاش و غیره هم استفاده نمیکنه و نیاز به کتابخانه های وسیع وابسته به سیستم عامل نداره، فکر میکنم این کد رو بعد از کامپایل به فایل اجرایی عملا میشه با افزودن چند بخش راه اندازه باینری دیگه به برنامه ای تبدیل کرد که حتی روی یک کامپیوتر بدون سیستم عامل اجرا بشه. یعنی مثلا بریزی روی یک CD و مثل بوت شدن بالا بیاد و کار بکنه.
اما بنظر میرسه native بودن درمورد برنامه های امروزی امری نسبی هست، چون برنامه های امروزی به سرویسهای سیستم عامل و کتابخانه های جانبی زیادی وابسته هستن (درعمل مگه نمیشه کل محیط و سرویسهای دات نت رو هم مثل یک کتابخانهء خیلی بزرگ و اساسی درنظر گرفت؟). خب مسلمه که فایل اجرایی تولید شده توسط کامپایلر زبانهایی مثل سی و سی++ بیشتر native هست تا دات نت. چون تاجایی که میدونم/استنباط میکنم، در دات نت برنامهء شما باوجودی که میتونه به کد ماشین تبدیل بشه اما هنوز تحت کنترل اساسی و وابسته به محیط اجرای دات نت هست. یعنی فایل اجراییش به اون صورت خالص کد اجرایی مستقل نباید باشه. یعنی کد اجرایی شما یکسری پیشفرضهایی داره که سیستم سخت افزار به تنهایی قادر به برآورده کردن اونها نیست و اون موارد در محیط زمان اجرای دات نت وجود دارن.
توضیح این مسئله و تفکیک دقیقش سخته. اول باید یه تعریف با مرزهای مشخص تعیین کنیم. در علوم رایانه خیلی وقتها این مرزها بصورت یک خط باریک و مشخص نیستن و تعریف های مختلفی وجود داره و اجماعی روی یک کدومش نیست. نسبی هست خلاصه. بنظرم اگر ما بخوایم برنامه ای سیستمی یا (بخشی از) یک سیستم عامل رو بنویسیم یا نیاز به امکانات و ویژگیها و کنترل خیلی خاصی داشته باشیم که در فریمورک هایی مثل دات نت پیشبینی نشدن، مفهوم و اهمیت کدنویسی native بیشتر برجسته و مشخص میشه.
تو ایران بله ... !نقل قول:
و خودتون میدونید که این حیطه کاربرد و برنامه نویسان خیلی زیادتری از خیلی زمینه های دیگه داره. حداقل بین آحاد برنامه نویسها.
شوخی میکنی دیگه ؟!!!نقل قول:
ضمنا من الان اومده بودم یه تاپیک درمورد پورت شدن نسخه های جدید اپلیکیشن های معروف بزنم. مثلا اتوکد 2011 رو من دیدم ظاهرا با دات نت هست، یا نرو همینطور، بعید نیست چند وقت دیگه فتوشاپ تحت دات نت هم ببینیم
Net. و Autocad ؟!
Net. و photoshop ؟!
مثل اینکه شما تا به حال با Net. کار نکردید ! میدونید پشت اون فتوشاپ با اون رابط کاربری ساده چه پردازش تصویر و الگوریتم هایی هست ؟ اگر با Net. نوشته بشه برای یه عملیات سنگین مثل رندر کردن که در ورژن های اخیر فتوشاپ اضافه شده باید یک شبانه روز انتظار کشید .
داشتم لیست نرم افزار ها رو میخوندم از تعجب شاخ دراوردم ، گفتم الان گزینه های بعدی که تو جملهتون میبینم 3D Max و Maya هست ! ، هیچ کدوم از این برنامه ها که نام بردید با net. نه نوشته شدن نه توسعه داده میشن ، همگی با ++C هستن که نظر فنی شما رو هم در موردش دیددیم !
این هم شوخی هست دیگه ؟نقل قول:
چیزی که مشخصه اهمیت و گستردگی کاربرد کدنویسی native روز به روز درحال کمتر شدن هست.
این مسئله در خیلی زمینه ها پیش از این اتفاق افتاده و نسل کدنویسی native در خیلی حیطه ها تقریبا منقرض شده.
در برنامه نویسی وب مفهمومی به نام برنامه نویسی Native معنا نداره ، حالا شما از کجا این آمار رو دادید نمیدونم .نقل قول:
مثلا در وب دیگه کمتر جایی native کد نوشته میشه
با این پستتون دلیل قضاوتتون در مورد ++C و طرقداری بیش از حد از #C معلوم شد ، پشنهاد میکنم در مورد native code و managed code تحقیق و مطالعه کنید و بعد از اون هم روی تفاوت مفسر و کامپایلر ، اینطوری تفاوت ها براتون مشهود میشه و در آخر به این نتیجه میرسید که هیچ زبونی قدرت مطلق نیست و نسبت به دیگری برتری نداره مگر در زمینه ای خاص .
ببینید تمرکز بحث ما روی برنامه نویسی عمومی اپلیکیشن هست.
در این نرم افزارها هم درسته که هستهء اونا و اینطور عملیات Performance Critical رو با دات نت نمی نویسن، اما حداقل شاهد نوشته شدن کدهای جدید اینترفیس و بخشهای غیر بحرانی اونا با دات نت که هستیم. نه؟
یجوری میگید انگار نوشتن کد برای رندر کردن و پردازش تصویر کار روزمرهء بیشتر برنامه نویسها هست. توی چند درصد از اپلیکیشن های عادی ما چنین نیازهایی داریم؟
ضمنا در دات نت شما مثلا نمیتونید فیلم پخش کنید؟ خب مسلما پشت اون کامپوننتی که فیلم رو داره پخش میکنه کد سی++ و ارتباط با دایرکت ایکس و غیره هست، اما شما بعنوان یه برنامه نویس اپلیکیشن کاری به این حرفا نداری و از دات نت استفاده میکنی. یعنی میخوام بگم نیازی نیست این کارهای عادی در خود سی++ انجام بشن.
درمورد اینترفیس که کدهای جدید خیلی نرم افزارهای مشهور رو دارن با دات نت مینویسن.نقل قول:
داشتم لیست نرم افزار ها رو میخوندم از تعجب شاخ دراوردم ، گفتم الان گزینه های بعدی که تو جملهتون میبینم 3D Max و Maya هست ! ، هیچ کدوم از این برنامه ها که نام بردید با net. نه نوشته شدن نه توسعه داده میشن ، همگی با ++C هستن که نظر فنی شما رو هم در موردش دیددیم !
نه چه شوخی ای؟نقل قول:
این هم شوخی هست دیگه ؟
چطور؟
یعنی چی معنا نداره؟نقل قول:
در برنامه نویسی وب مفهمومی به نام برنامه نویسی Native معنا نداره ، حالا شما از کجا این آمار رو دادید نمیدونم .
یه زمانی پس CGI با زبان سی توی وب دیده نمیشد؟
الانش هم کاملا منسوخ نیست و یه جاهایی کاربرد داره.
من خودم یبار یه برنامه با سی نوشتم و روی سایتم اجرا کردم که دو هفته هم درحال اجرا بود!!
بالاخره سرور هم یه کامپیوتر هست با یه سیستم عامل، و میشه روی برنامهء Native نوشت و اجرا کرد (اگر این اجازه داده شده باشه؛ که حداقل روی خیلی سرورهای غیرویندوزی این امکان هست - از ویندوز خبر ندارم ولی یه زمانی راه نوشتن برنامه های سمت سرور کامل همین کدنویسی Native بوده، ولی احتمالا اون زمان ویندوز اصلا وجود نداشته یا قابلیت سرور بودن رو نداشته!!).
ضمنا خیلی وقت پیش بود که مقالاتی درمورد کاربرد زبانها و روشهای جدید اجرای برنامه ها مثل زبانهای تفسیری و اپلیکیشن های اجرا شده توسط مفسرها نوشته شدن و استدلالهای خوبی هم براش آوردن. این مقاله ها فقط مربوط به وب نبودن.
نچ ...دعوا نکنید طوری بحث کنید که یه چیزی از حرفای شما یاد بگیریم .
بحث رفته همونجا که من دوست دارم.
من طرفدار native هستم, به همون دلایلی که خودتون میدونید.
به چه دلیل؟ چه چیزی باعث شده این فکر رو بکنی که Native روز به روز داره کاربردش کمتر می شه؟نقل قول:
چیزی که مشخصه اهمیت و گستردگی کاربرد کدنویسی native روز به روز درحال کمتر شدن هست.
اگر این حرف صحت داشت پس چرا هنوزم باید سی، دلفی و... هنوزم در اغلب پروژه های تجاری حرف اول رو بزنند؟(و حرف اول رو می زنند).
بقیه را بی سواد فرض می کنی؟
(دست خط نوشتنت با چندتا از کاربرای سایت دقیقن یکسانه:چشمک:)
سی شارپ.. خیلی دوسش دارم
این فرایندی بوده که صورت گرفته و میگیره و مستند هست. شما ظاهرا خبر ندارید!
مثلا در وب این صورت گرفت. در دسکتاپ هم مسلما با ایجاد زبانهایی مثل جاوا، پایتون، دات نت و غیره همین صورت گرفته و میگیره. کدوم اینها قابل انکار هست؟
تاجایی که من میدونم جاوا آمارش همیشه جزو سه زبان اول بوده (و اگر بگم بیشتر وقتها اول بوده شاید اغراق نباشه). جاوا جزو Native هست؟نقل قول:
اگر این حرف صحت داشت پس چرا هنوزم باید سی، دلفی و... هنوزم در اغلب پروژه های تجاری حرف اول رو بزنند؟(و حرف اول رو می زنند).
بعدم من نگفتم لزوما آمار برنامه نویسی Native دقیقا همین الان کمتر از برنامه نویسی غیر Native هست. کجا چنین حرفی زدم؟!
من میگم به مرور با سرعت قابل توجهی، کدهای غیر Native جای کدهای Native رو در خیلی حیطه ها و کاربردها گرفتن و این فرایند همچنان ادامه داره و بنظرم با ظهور دات نت یک بخش عظیمی از کدهای غیر Native هم به سرعت به این مجموعه اضافه خواهد شد که این آمار رو بیشتر/سریعتر به سمت برنامه نویسی غیر Native سوق میده.
من اگر با دیگران با احترام برخورد نمیکردم اینقدر در جواب ایرادهای بی پایه و بدون سند و استدلال شما، سند و استدلال ارائه نمیکردم. اگر دقت کنید هرچیزی من گفتم صحیح هست و نمیشه ردش کرد. کاملا مستند و بر اساس دانش و تجربهء عینی هست.نقل قول:
بقیه را بی سواد فرض می کنی؟
مثلا چیزهایی که در بالا گفتم کدومش غلط هست؟
شما هم همینطور.نقل قول:
(دست خط نوشتنت با چندتا از کاربرای سایت دقیقن یکسانه:چشمک:)
به نظرم منم کاربردش کم نمیشه . کلی دلیل نوشته بودم که پرید دوباره هم نمیشه به خاطر بیارم . اما در کل نیاز به تولید سریع نرم افزار یکی از دلایل بوجود اومدن دات نت بوده .اما از نیازهای سابق چیزی کم نشده که زبانهای نیتیو بازار خودشونو از دست بدن . به عبارتی اگر دات نت ورژن جدیدی از برنامه نویسی بود آره کاربرد زبانهای نیتیو کم میشد . اما دات نت و دوستان مأموریت ویژه ای دارن . تولید نرمافزار هایی که با استفاده از نیتیو ها مرقوم به صرفه نیستن. اما در مقابل با رشد و گشترش فناوری تقاضا برای زبانهای نیتیو هم به نظر من بیشتر شده . راستی این زبان گو گوگل نیتیو به حساب نمیاد میاد ؟
ببین،منو بی خیال، من کلن بی سوادم برای همین کم حرف می زنم.
کدوم فرایند؟ کی این فرایند رو ثابت کرده؟ کجا مستند شده؟نقل قول:
این فرایندی بوده که صورت گرفته و میگیره و مستند هست. شما ظاهرا خبر ندارید!
مغلطه می کنی؟ خیلی مضحکه. معیارهای ما توی وب با دسکتاپ 180 درجه متفاوته. نکنه فکر می کنی دو روز دیگه اسمبلی پَر، سی پَر، گنجیشک پر همه چیز با پایتون و جاوا...نقل قول:
مثلا در وب این صورت گرفت. در دسکتاپ هم مسلما با ایجاد زبانهایی مثل جاوا، پایتون، دات نت و غیره همین صورت گرفته و میگیره. کدوم اینها قابل انکار هست؟
من کلمه ی اول بکار بردم؟!کلمه ی اول رو بهم نشون بده، کو، کجا...؟نقل قول:
تاجایی که من میدونم جاوا آمارش همیشه جزو سه زبان اول بوده (و اگر بگم بیشتر وقتها اول بوده شاید اغراق نباشه). جاوا جزو Native هست؟
...نقل قول:
اگر دقت کنید هرچیزی من گفتم صحیح هست و نمیشه ردش کرد. کاملا مستند و بر اساس دانش و تجربهء عینی هست.
نقل قول:
مثلا اتوکد 2011 رو من دیدم ظاهرا با دات نت هست
هیچی، همش درسته؛نقل قول:
مثلا چیزهایی که در بالا گفتم کدومش غلط هست؟
اگه من ادای استادا رو در بیارم شاید در ظاهر مشکلی نباشه ولی دارم با تبر به ریشه ی اون بنده های خدایی می زنم که تازه دارند قدم بر می دارند.
php
MySql (البته کد نویسی این نیست)
jScript
جدیدا هم جاوا با فریمورک Qt
C# هم قبلا ولی دیگه نه!!
اینی که دوستمون میگند Photoshop با .NEt هم ورژن داره عجیبه.
حداقل گوگل چیزی در این رابطه نیاورد.
http://www.google.com/search?ie=UTF-....net+framework
--------------------------------------------------------------
مقایسه زبان های برنامه نویسی باید در کاربرد و سینتکس انجام بشه نه درقدرت.
---------
من با Platform دات نت راحت هستم.
چرا بحث رو منحرف میکنید ؛ شما خودتون حرف Photoshop و Nero و Autocad رو آوردید وسط ! من که نگفتم اینارو با چی نوشتن ، چند درصدش مهم نیست ، مهم این هست که هیچ برنامه ای ، اونم در حد Photoshp و Nero و Autocad با Net. توسعه داده نشده و نمیشه .نقل قول:
ببینید تمرکز بحث ما روی برنامه نویسی عمومی اپلیکیشن هست.
در این نرم افزارها هم درسته که هستهء اونا و اینطور عملیات Performance Critical رو با دات نت نمی نویسن، اما حداقل شاهد نوشته شدن کدهای جدید اینترفیس و بخشهای غیر بحرانی اونا با دات نت که هستیم. نه؟
یجوری میگید انگار نوشتن کد برای رندر کردن و پردازش تصویر کار روزمرهء بیشتر برنامه نویسها هست. توی چند درصد از اپلیکیشن های عادی ما چنین نیازهایی داریم؟
چه ربطی داره ؟! الان شما تو تو ASP.NET نمیتونی فیلم پخش کنی ؟ تو PHP چی ؟ خوب پس بیایم بگیم آقا با ASP.NET فتوشاپ رونوشتن چون ASP.NET فیلم پخش میکنه و پشت صحنه هم دست به دامن کدهای C هست !نقل قول:
ضمنا در دات نت شما مثلا نمیتونید فیلم پخش کنید؟ خب مسلما پشت اون کامپوننتی که فیلم رو داره پخش میکنه کد سی++ و ارتباط با دایرکت ایکس و غیره هست، اما شما بعنوان یه برنامه نویس اپلیکیشن کاری به این حرفا نداری و از دات نت استفاده میکنی. یعنی میخوام بگم نیازی نیست این کارهای عادی در خود سی++ انجام بشن.
دلت خوشه ها !نقل قول:
درمورد اینترفیس که کدهای جدید خیلی نرم افزارهای مشهور رو دارن با دات نت مینویسن.
اولا که اینطور نیست و دوما اگر اینطور هم باشه ؛ موندم به چیه Net. تو این زمینه مینازید ؟ اینکه GUI یه برنامه رو باهاش میسازن ؟!
چون اینطور نیست ، اگر بود این همه برنامه به صورت Native توسعه داده نمیشد ، تعداد برنامه هایی که به صورت Managed و تجاری توسعه داده میشه در مقابل برنامه های Native در همین حوضه 1/100 هم نیست .نقل قول:
نه چه شوخی ای؟
چطور؟
دقیقا ؛ اون برنامه هایی که در بالا نام بردید هم چون Net. به هیچ وجه حتی نمیتونه قسمتی از اون رو پیاده کنه به صورت Native توسعه داده میشن .نقل قول:
بنظرم اگر ما بخوایم برنامه ای سیستمی یا (بخشی از) یک سیستم عامل رو بنویسیم یا نیاز به امکانات و ویژگیها و کنترل خیلی خاصی داشته باشیم که در فریمورک هایی مثل دات نت پیشبینی نشدن، مفهوم و اهمیت کدنویسی native بیشتر برجسته و مشخص میشه.
این تاپیک داره از بحث اصلیش خارج میشه و من دیگه اینجا کاری ندارم ؛ شما هم اگر هنوز روی یکّه تاز بودن Net. پافشاری داری یکم دیدت رو وسیع تر کن .
موفق باشید .
اولا دقت کنید کهحوزه برنامه نویسی به قول شما عمومی Application منحصر به سکوی ویندوز نیست. ثانیا اینگه به نظر شما بعضی شرکت ها از دات نت برای ایجاد رابط کاربر گرافیکی استفاده می کنند، چیز جدیدی نیست. سال ها قبل هم بسیاری از برنامه نویسان ++VC از Visual Basic برای تولید رابط کاربر استفاده می کردند. به نظر شما Visual Basic به خاطر این کار، حوزه تولید نرم افزارهای عمومی را فتح کرد؟ خیر، الان به عنوان یک محیط توسعه نرم افزار و زبان برنامه نویسی منسوخ شده محسوب میشه، و اون چیزی که الان به عنوان VB.NET شناخته میشه، رو میشه گفت عملا یک زبان جدید هست، که شباهت هایی به VB قدیمی داره. استفاده از یک ابزار دیگه برای طراحی رابط کاربر، برای برنامه نویسان ++C ایی که از ابزارهای برنامه نویسی مایکروسافت استفاده می کنند، امری معمولی هست. ++VC یک محیط توسعه RAD نیست، و غیر از یک طراح Dialog و چند ویزارد، قابلیت خاصی برای تولید سریع رابط کاربر نداره. طبیعی هست که برنامه نویسان آن، به جای صرف ساعت ها (یا روزها و هفته ها) وقت صرف طراحی رابط کاربر از طریق کد، به Form Designer موجود برای #C یا VB.NET رو بیارند، و برنامه خودشان را به صورت تلفیقی بنویسند. سایر ابزارهای برنامه نویسی برای ویندوز همچین محدودیت هایی ندارند، مثلا Delphi یا C++ Builder هر دو علاوه بر اینکه کدهای Native با Performance بالا برای سکوی ویندوز تولید می کنند و برخلاف Visual Studio وابستگی تنگاتنگی با انواع و اقسام محصولات مایکروسافت در حوزه های مختلف ندارند؛ دارای یک Form Designer برای طراحی رابط کاربر هستند، و وابستگی هم به کتابخانه های دات نت ندارند. طبیعی هست که برنامه نویسانی که از همچین ابزارهایی استفاده می کنند، نیازی به دات نت یا Form Designer آن ندارند. پس اگر برنامه نویسان ++VC از Form Designer دات نت استفاده کردند، این به معنی آن نیست که دات نت همه جا یکه تازی میکنه!نقل قول:
ببینید تمرکز بحث ما روی برنامه نویسی عمومی اپلیکیشن هست.
در این نرم افزارها هم درسته که هستهء اونا و اینطور عملیات Performance Critical رو با دات نت نمی نویسن، اما حداقل شاهد نوشته شدن کدهای جدید اینترفیس و بخشهای غیر بحرانی اونا با دات نت که هستیم. نه؟
دات نت دارای یک Class Library بزرگ هست، ابزارهای خیلی خوبی هم برای تولید نرم افزارهای Enterprise و Web-based فراهم میکنه، پشتیبانی ازش در نسخه های جدید ویندوز هم افزایش پیدا کرده؛ ولی همچنان در حوزه نرم افزارهای Desktop حرف چندانی نداره؛ شاید استفاده از دات نت برای یک پروژه Desktop در قیاس با استفاده از ++VC از نظر Productivity و کاهش هزینه های تولید بهتر باشه، ولی در قیاس با ابزارهایی مثل Delphi یا C++ Builder از نظر وابستگی به کتابخانه های زمان اجرا، قابلیت استفاده بی دردسر از ابزارهای غیر مایکروسافتی (مثل استفاده از بانک های اطلاعاتی غیر مایکروسافتی)، از نظر حجم کامپوننت های موجود به صورت اوپن سورس یا تجاری، از نظر پشتیبانی از نسخه های مختلف ویندوز، و از نظر Performance حرف چندانی برای گفتن نداره. مضاف بر اینکه، همانطور که در ابتدای پست هم ذکر کردم، حوزه دات نت، سکوی ویندوز هست.
البته با توجه به اینکه حوزه دات نت سکوی ویندوز هست، و سازنده ویندوز و دات نت مایکروسافت هست، طبیعی هست که مایکروسافت کاربرد دات نت و پشتیبانی از اون رو به تدریج در سکوی ویندوز افزایش بده، و استفاده از اون رو برای Desktop Application تبلیغ کنه.
IDE دلفی و C++ Builder هم بخش مربوط به Refactor اش تحت دات نت (با Delphi.NET) نوشته شده. پس با این حساب، IDE دلفی هم از نظر شما به دات نت پورت شده دیگه؟! هر نرم افزاری که برای نصب شدن به .NET Framework نیاز داشته باشه، لزوما به معنی اون نیست که به دات نت پورت شده باشه! تیم توسعه اون نرم افزار ممکنه تصمیم بگیره برای افزودن یک قابلیت جدید، برای صرفه جویی در وقت یا هزینه، اون قابلیت را با دات نت توسعه بده.نقل قول:
ضمنا من الان اومده بودم یه تاپیک درمورد پورت شدن نسخه های جدید اپلیکیشن های معروف بزنم. مثلا اتوکد 2011 رو من دیدم ظاهرا با دات نت هست، یا نرو همینطور، بعید نیست چند وقت دیگه فتوشاپ تحت دات نت هم ببینیم، اینها خودش نشون میده دات نت پلتفرم مناسبی تشخیص داده شده (یا شاید اینطور بگیم که حرکت به سمت اون ناگزیر عاقلانه ترین گزینه برای آینده هست) و ضمنا کاراییش درحدی هست که این برنامه های مفصل پیشرفته و بعضا درگیر با گرافیک و سه بعدی رو جواب بده (البته قبول دارم بازی نیاز به پرفورمنس بالاتری داره).
در حال حاضر روی یک پروژهPHPکد میزنم و asp.net هم یکم کمایی تایپیکاشو میخونم یا کسی ازم سوالی بکنه میرم یه ذره ای تست میکنم روی سوالش.
نمیدونم چقدر راضیم.
فقط می دونم کاری که ازم میخواند رو باهش انجام میدم.
کار کردند با هر دو زبون برام گاهی لذت بخش و گاهی یک چیز بی تفاوت و بی حس ه.
ولی محیط ویژوال استادیو رو بیشتر دوست دارم چون یوزرفرندلی تره یا شاید چون بیشتر اونجا بودم.کلابا هر چی کار کنم بعد یه مدت بهش خو می کنم!
دات نت فقط مخصوص ویندوز نیست، برای لینوکس هم دات نت داریم که البته به کاملی دات نت ویندوز نیست، ولی با همکاری مایکروسافت در حال تکمیله.نقل قول:
البته با توجه به اینکه حوزه دات نت سکوی ویندوز هست، و سازنده ویندوز و دات نت مایکروسافت هست، طبیعی هست که مایکروسافت کاربرد دات نت و پشتیبانی از اون رو به تدریج در سکوی ویندوز افزایش بده، و استفاده از اون رو برای Desktop Application تبلیغ کنه.
پروژه MONO از طرف ناول پشتیبانی میشه؛ وضعیتش هم به این صورت هست که از یک طرف به برنامه نویسان دات نت وانمود بشه که دات نت فراتر از سکوی ویندوز است، و از طرف دیگه، امکاناتش به حدی نرسه که فردا برای فروش ویندوز مشکل ایجاد کنه. در واقع MONO همیشه چند قدم از آخرین نسخه دات نت و امکانات جدیدش عقب تر هست، و علاوه بر آن، بعضی از امکانات دات نت به طور اختصاصی برای ویندوز توسعه داده شدند. در هر حال، این MONO هر چند در بعضی حوزه ها تا حد خوبی به پایداری و کیفیت مناسبی رسیده، و الان در توزیع های مختلف لینوکس هم وجود داره، ولی در خیلی از حوزه ها هم چیزی بیش از آب نبات چوبی برای برنامه نویسان دات نت نیست.نقل قول:
دات نت فقط مخصوص ویندوز نیست، برای لینوکس هم دات نت داریم که البته به کاملی دات نت ویندوز نیست، ولی با همکاری مایکروسافت در حال تکمیله.
سی شارپ می نویسم و بهش علاقه دارم چون خیلی راحته
اما دوست دارم جاوا رو هم یاد بگیرم
فکر نکنم اگه دات نت برای لینوکس ارائه بشه در فروش ویندوز تاثیری داشته باشه از طرف دیگه اتفاقاَ به منفعت مایکروسافت خواهد بود چون برنامه نویسان وقتی ببینند که نرم افزارشون هم در ویندوز و هم در لینوکس قابل استفاده است بیشتر به سمت دات نت جذب میشن.نقل قول:
پروژه MONO وضعیتش هم به این صورت هست که از یک طرف به برنامه نویسان دات نت وانمود بشه که دات نت فراتر از سکوی ویندوز است، و از طرف دیگه، امکاناتش به حدی نرسه که فردا برای فروش ویندوز مشکل ایجاد کنه.
به سمت ویندوز چی؟ بیشتر جذب میشن؟ مطمئناً خیر.نقل قول:
منفعت مایکروسافت خواهد بود چون برنامه نویسان وقتی ببینند که نرم افزارشون هم در ویندوز و هم در لینوکس قابل استفاده است بیشتر به سمت دات نت جذب میشن.
درآمد مایکروسافت از ویندوز به مراتب بیشتر از دات هست. پس ترجیح میده همچنان ویندوز محصول محوری باقی بمونه.
اتفاقاً صدمهٔ جدی به بازاریابی ویندوز خواهد زد. عملاً ویندوز مهمترین مزیت خودش که همان نرمافزارهای منحصر به فردش است را از دست خواهد داد و این یعنی فاجعهای برای مایکروسافت و سایر محصولاتش!نقل قول:
فکر نکنم اگه دات نت برای لینوکس ارائه بشه در فروش ویندوز تاثیری داشته باشه از طرف دیگه اتفاقاَ به منفعت مایکروسافت خواهد بود چون برنامه نویسان وقتی ببینند که نرم افزارشون هم در ویندوز و هم در لینوکس قابل استفاده است بیشتر به سمت دات نت جذب میشن.
microsoft یک جور وابستگی برای user هاش ایجاد کرده. به هیچ وجه این وابستگی رو از بین نمی بره. user هاش رو به سمت linux سوق نمیده..:متفکر:
البته نظر شخصی منه.
برای همین من دارم .net رو میندازم تو سطل آشغال.دقیقاً مثل VB.
من 3 4 سال پیش که اومدم طرف .net فقط میدونستم که یه چیزی هست به اسم لینوکس که ویندوز نیست و میشه با VB.Net براش برنامه نوشت.
الان دارم میرم طرف C++ چون با ++C برای لینوکس برنامه نوشتم و هیچوقت هم از کارم پشیمون نمیشم.
نمیدونم چرا شما فقط یک طرف قضیه رو می بینین!نقل قول:
به سمت ویندوز چی؟ بیشتر جذب میشن؟ مطمئناً خیر.
درآمد مایکروسافت از ویندوز به مراتب بیشتر از دات هست. پس ترجیح میده همچنان ویندوز محصول محوری باقی بمونه.
عمده ی محبوبیت ویندوز به خاطر نرم افزارهایی نیست که براش وجود داره، بلکه بخاطر خود ویندوز، سهولت کار، و امکانات دیگشه.
بر خلاف نظر شما که محبوبیت یک سیستم عامل رو وجود نرم افزارهای متعدد برای اون میدونید به نظر من این خود سیستم عامله که برای کاربر اهمیت داره. برای مثال بسیاری از نرم افزارهایی رو که برای ویندوز نوشته شده اند و اکثرا پولی هستند، شما میتونید نرم افزاری مشابه با کارایی مشابه آن را برای لینوکس هم پیدا کنید که به احتمال قوی رایگان هم خواهد بود!
اینکه چرا مایکروسافت روی نسخه ی لینوکسی دات نت سرمایه گذاری زیادی نمی کنه، به سیاستهای رقابتی این شرکت وابستست، همانطور که لینوکس IIS رو ساپورت نمی کنه (شاید مایکروسافت میگه : این به اون در!)
به هر حال مایکروسافت شرکتیه که در برخورد با رقبا دو سیاست داره :
1- یا سهام اون شرکت و تکنولوزی رو میخره و در خودش ادغام می کنه (مثل کاری که با بورلند کرد)
2- یا میاد و سرمایه گذاری میلیاردی می کنه و با یک تکنولوژی جدید رو دست رقبا می زنه (مثل بینگ که شده مرجع تقلید گوگل!)
سیاست جدید مایکروسافت در مورد اوپن سورس تغییر کرده و به جای برخورد با هاش داره یه جورایی اونا رو هم میاره زیر مجموعه ی خودش می کنه (Php.Net) و به احتمال قوی برای لینوکس هم آشی خواهد پخت!
سلام دوست عزیز؛
ببین دوست من، اینکه "چرا" ویندوز محبوب تره، ربطی با این موضوع نداره. "مهم" اینه که در حال حاضر ویندوز محصول محوری مایکروسافته. درآمد مایکروسافت از ویندوز بسیار بیشتر از سایر محصولاتش هست.
هیچ وقت در این شرایط ویندوز رو قربانی دات نت نمیکنه.
حالا میخوای نرم افزار رایگان روملاک قرار بدی، ادغام شرکت رو، محصول جایگزین رو؛ یا هر دلیل دیگه.
اینا " محوری بودن ویندوز" رو نمیتونه انکار کنه.
خوب بنده هم همین رو عرض کردم!!نقل قول:
اینکه چرا مایکروسافت روی نسخه ی لینوکسی دات نت سرمایه گذاری زیادی نمی کنه، به سیاستهای رقابتی این شرکت وابستست،
موفق باشی
برای شرکت مایکروسافت دو محصول اصلی وجود داره، و سایر محصولات عمدتا برای افزایش فروش اون دو محصول عرضه میشند؛ ویندوز و آفیس.نقل قول:
نمیدونم چرا شما فقط یک طرف قضیه رو می بینین!
عمده ی محبوبیت ویندوز به خاطر نرم افزارهایی نیست که براش وجود داره، بلکه بخاطر خود ویندوز، سهولت کار، و امکانات دیگشه.
بر خلاف نظر شما که محبوبیت یک سیستم عامل رو وجود نرم افزارهای متعدد برای اون میدونید به نظر من این خود سیستم عامله که برای کاربر اهمیت داره. برای مثال بسیاری از نرم افزارهایی رو که برای ویندوز نوشته شده اند و اکثرا پولی هستند، شما میتونید نرم افزاری مشابه با کارایی مشابه آن را برای لینوکس هم پیدا کنید که به احتمال قوی رایگان هم خواهد بود!
اینکه چرا مایکروسافت روی نسخه ی لینوکسی دات نت سرمایه گذاری زیادی نمی کنه، به سیاستهای رقابتی این شرکت وابستست، همانطور که لینوکس IIS رو ساپورت نمی کنه (شاید مایکروسافت میگه : این به اون در!)
درآمدی که مایکروسافت از عرضه محصولاتی مثل Visual Studio به دست میاره، عملا در برابر درآمد حاصل از فروش ویندوز یا Office هیچی نیست! اینها ابزارهایی هستند برای فروش بیشتر دو محصول کلیدی مایکروسافت.
مایکروسافت هیچ وقت نمیاد به خاطر دات نت که خودش عاملی برای فروش بیشتر ویندوز هست، فروش ویندوز را به خطر بیاندازه، و به قول شما "دات نت تحت لینوکس" با قابلیت رقابت با ویندوز ارائه کنه!
درباره IIS هم نمیدونم چه چیزی باعث شد که ازش نام ببرید؛ اولا IIS اصلا در برابر ویندوز عددی نیست که مایکروسافت بخواد پشتیبانی کردن یا نکردن از آن را با محصول ویندوز خودش مقایسه کنه. ثانیا پشتیبانی نشدن IIS در لینوکس ربطی به لینوکس نداره! IIS یک نرم افزار مایکروسافتی هست که برای سکوی ویندوز نوشته شده؛ یعنی مایکروسافت تمایلی نداره که IIS را برای سکوی لینوکس عرضه کنه، نه اینکه لینوکس از IIS پشتیبانی نمیکنه! لینوکس یک سیستم عامل هست، هر برنامه ایی که تحت لینوکس نوشته بشه، داخل لینوکس قابل اجرا ست. IIS و ASP.NET خودشان از عوامل مهم فروش نسخه های سرور ویندوز هستند. مایکروسافت بیاد IIS تحت لینوکس ارائه کنه که نون خودش رو آجر کنه؟!
مایکروسافت بورلند رو خرید؟! چرا درباره چیزهایی که ازشون اطلاع ندارید، اظهار نظر می کنید؟!نقل قول:
به هر حال مایکروسافت شرکتیه که در برخورد با رقبا دو سیاست داره :
1- یا سهام اون شرکت و تکنولوزی رو میخره و در خودش ادغام می کنه (مثل کاری که با بورلند کرد)
عجب! پس استفاده از تصاویر پس زمینه در صفحه جستجوی گوگل یعنی دیگه Bing مرجع تقلید گوگل شده؟!!نقل قول:
2- یا میاد و سرمایه گذاری میلیاردی می کنه و با یک تکنولوژی جدید رو دست رقبا می زنه (مثل بینگ که شده مرجع تقلید گوگل!)
چی رو داره زیر مجموعه خودش میکنه؟! اگر یک شرکتی فرضا یک کامپایلر تحت پلت فرم ساخت خودش از Python یا Ruby یا غیره منتشر کنه، یعنی Python و Ruby و سایر چیزها زیرمجموعه اون شرکت شدند؟! استخدام خالق یک زبانی مثل Python توسط شرکتی مثل گوگل باعث نشده که اون شرکت ادعای این رو بکنه که اون ابزار الان زیرمجموعه اون شرکت هست، اون وقت چطور انتظار دارید که وجود یک کامپایلر از یک زبان برای یک پلت فرم، آن زبان یا ابزار را زیرمجموعه اون پلت فرم و شرکت توسعه دهنده اون بکنه؟! حالا بماند که خیلی از این ها هم مستقیما توسط مایکروسافت انجام نشده، بلکه در قالب پروژه های اوپن سورس تحت دات نت توسط گروهی از کاربران برای استفاده از قابلیت های اون زبانها صورت گرفتند.نقل قول:
سیاست جدید مایکروسافت در مورد اوپن سورس تغییر کرده و به جای برخورد با هاش داره یه جورایی اونا رو هم میاره زیر مجموعه ی خودش می کنه (Php.Net) و به احتمال قوی برای لینوکس هم آشی خواهد پخت!
از دوستان نظرخواهی کنید.
افراد با تجربه و حرفه ای همه میدونن.
سند هم توی وب درموردش زیاد هست.
اصولا تاریخ رایانه همینه.
اما لطفا حرف بنده رو تحریف نکنید.
چیزی که من ادعا کردم اینه که به مرور در خیلی عرصه ها و کاربردها، روشهای اجرای غیر Native جای برنامه های native رو گرفتن. مثال واضحش هم وب هست که شما فرمودید در وب چنین چیزی نبوده و اصلا در وب سرور نمیشه با برنامهء native کار کرد!! بازم سر حرفتون هستید؟
در زمینهء دسکتاپ هم همینطور، ولی به نسبت خیلی کمتر از وب. ولی بازهم این مسئله، یعنی بوجود آمدن زبانهای اسکریپتی، بایت کدی، و چیزهایی مثل دات نت، نشان دهندهء همین روند هست.
دقت کنید من جایی نگفتم که برنامه نویسی غیرنیتیو بیشتر از نیتیو هست، گفتم روز به روز اینطور زبانها پیشرفت کردن و هنوز هم درحال پیشرفت هستن.
من ادای استادها رو درنمیارم. هرچی میگم نظر شخصی خودم هست که البته بر اساس دانش و تجربه هست و وقتی به دیگران ارائه میکنم همراه با استدلال و سنده و قابل بحث و پیگیری هست. اگر دقت کنید اینجا بیشتر شما ادعاهایی کردید که هیچ سند و استدلال و گاهی اصلا مفهومی ندارن و غلط بودن. مثل همینکه نمیدونستید میشه اپلیکیشن وب رو هم بصورت native نوشت و اصلا در قدیم اینطور خیلی معمول بوده؛ الانم روی بیشتر سرورهای لینوکس حداقل، میشه اینکار رو کرد.نقل قول:
اگه من ادای استادا رو در بیارم شاید در ظاهر مشکلی نباشه ولی دارم با تبر به ریشه ی اون بنده های خدایی می زنم که تازه دارند قدم بر می دارند.
مورد دیگه اینه که میگید کدنویسی native، اما این حرف مفهومی نداره به خودی خود، چون روش اجرای برنامه به خودی خود هدف نیست و مهم انجام کار هست. یه جوری میگید native که اونایی که بقول شما تازه قدم برمیدارن فکر میکنن native بودن به خودی خودش یک مزیت بزرگ و هدفی هست. درصورتیکه اصلا اینطور نیست! اصولا زبانهای تفسیری، اجرا شده با ماشین مجازی، محیط مدیریت شده و غیره، دارای خواص و امکاناتی هستن که در بعضی کاربردها خیلی مفید و حتی ضروری هست. این خواص و امکانات در زبانهای native اکثرا پیاده نشدن یا پیاده سازی اونها خیلی مشکل تر هست (اگر نگیم عملا غیرممکنه)؛ بطور کلی هم که کدنویسی زبانهای native معمولا بیشتر و سخت تر هست و مستعد باگ و مسائل امنیتی بیشتری بنابراین. مثلا فرض کنید در وب ما بجای PHP چرا باید بیایم و از C استفاده بکنیم؟
من نگفتم زبانهای Native به کلی بازار خودشون رو از دست میدن.
نمیدونم چرا کاربران اکثرا تمایل به افراطی دیدن بحثها دارن.
چیزی که من میگم اینه که دات نت پتانسیل عظیمی در برنامه نویسی دسکتاپ ویندوز داره و به همین دلیل انتظار پیشرفت چشمگیرش در آیندهء نزدیک خیلی زیاد هست.
الان دلیلی نداره خیلی اپلیکیشن های عمومی رو با چیزی غیر از دات نت و سی شارپ نوشت.
مگر دلایلی مثل اینکه طرف از قدیم سی++ کار میکرده و باهاش راحته (و بعضیا هم که غرور و تعصب و تنبلی و برتری طلبی بهشون اجازه نمیده سراغ زبان و فریمورک دیگری برن) و اینطور چیزا.
بعدم شما وقتی چیزی میگی لطفا سند و استدلال و مثالی براش بیار. نمیگم حرفت غلطه، شاید درست باشه، اما وقتی میگی با رشد و گسترش فناوری چی شده و فلان و بهمان، این یه حرف خیلی کلی و تنها ادعایی مبهم هست که اصلا معلوم نیست داره از چی صحبت میکنه و چه دلیلی برای این ادعا داره.
اگر دقت کنید پستهای من باوجود حجیم بودن و با اینکه به اینهمه کاربر مخالف هم دارم جواب میدم، حتی از نظر جمله بندی و دقت و کمال پاسخگویی و اصولی بودن و غلط املایی هم کیفیت بالاتری نسبت به پستهای دیگران دارن. طرز فکر و رویه و دانش و مهارت واقعی افراد در همینطور چیزها هم نمایان میشه. شما که یک پست اصولی و دقیق نمیزنید چطور در مسائلی اینقدر تخصصی و علمی و برنامه نویسی میخواید صاحب دانش و مهارت و صلاحیت شمرده بشید؟!
بازهم یک کاربر بی دقت پرید وسط!
دوست عزیز یک بار دیگه با دقت پستها رو بخونید ببینید من جایی گفتم فتوشاپ ورژن تحت دات نت داده؟
من گفتم بعید نیست در آیندهء نزدیک این اتفاق بیفته.
حالا بعضیا فکر میکنن حتما باید تمام فتوشاپ با دات نت باشه. اما بنده فکر میکنم اینقدری سواد و تجربه دارم که بدونم مثلا کاربرد سی++ کجاست و در اینطور پروژه های خاص و بزرگ چیز غیرمنتظره ای نیست که بخشهایی از اونها با یک زبان و فناوری و بخشهایی دیگر با زبان و فناوری دیگری نوشته شده باشن.
همیشه سعی کنید اول سطح دانش و تجربه و در اصل دقت و اصولی بودن گفتار مخاطب خودتون رو هم ارزیابی بکنید و ببینید واقعا اون چیزی که شما فکر میکنید منظورش بوده در نوشته هاش بوده یا نه. هرچند اگر شما خودتون در صلاحیت لازم برای ارزیابی منطق بحث نباشید، مسلما از رویه و نظر شخصی خودتون پیروی میکنید.
دلیلش چی بود؟
چرا شما و کاربران دیگه اغلب مبهم و خیلی کلی و بصورت ادعا و کل کل صحبت میکنید؟
یاد بگیرید بحث منطقی و علمی بکنید. مسلما این کار راحتی نیست و براتون هزینه و سختی داره. انتظار دیگری نداشته باشید.
بارها ادعاهایی رو به من نسبت میدن که نمیتونن اثبات کنن بنده چنین ادعایی کردم.
اگر جایی این ادعاها مستند هست لطفا نقل قول کنید.
من خوب میدونم چی میگم و درحد دانش و پشتوانه ای که میتونم از سند و استدلال براش بیارم صحبت میکنم. حالا اگر شما یه پیشداوری و قضاوت دیگری دارید مشکل شماست.
بنده جایی نگفتم سی شارپ قدرت مطلق هست.
خود بنده زبانها و فریمورک های متعددی غیر از سی شارپ و دات نت رو یاد گرفتم و اصولا یادگیری دات نت رو بخاطر اساسی نبودنش در یادگیری پایه ای برنامه نویسی و توانایی نوشتن تمام برنامه های لازم و نیز بدلیل نسبتا انحصاری بودن و نسبتا ویندوزی بودنش، جزو آخرین یادگیری ها در لیست برنامه هام گذاشته بودم.
بازهم ادعای کلی و مبهم بدون دلیل و سند.
یجورایی میخواید نظر خودتون رو بگید اما از زیر بار بحث و اثباتش شانه خالی میکنید.
و اصلا شاید اشتباه فکر میکنید اما نمیخواید با واقعیت دشوار بودن مطمئن شدن از صحت افکار خودتون روبرو بشید.
من نمیدونم منو باید به بی سوادی و افراطی بودن متهم کنن یا کسانی رو که اصلا نمیدونن یا اصول بحث منطقی و علمی رو رعایت نمیکنن.
در هر موردی اگر میخواید بحث کنید من آماده ام. البته تاجایی که وقت و انرژی آزاد داشته باشم و بحث رو مفید ببینم (برای خودم هم شرطه). بهرحال قدم اول اقدام اصولی، اینه که مثلا برای هرموردی که میخواید تاپیک بزنید. اما بگم اصولا ادعاهای شماها خیلی کلی و مبهم و بی معناست یا مفاهیم غلطی رو میرسونه. مثلا همینکه میگید طرفدار کدنویسی نیتیو هستید، خودش بی معناست. چون هیچ دلیل خاصی وجود نداره این یه قاعده و مزیت کلی در هرجایی باشه. نیتیو بودن یا نبودن به خودی خود هدف منطقی ای نیست. بلکه با توجه به کاربرد و میزان اهمیت مزایا و معایب هرکدوم در اون کاربرد خاص، نیتیو بودن یا نبودن تفاوت میکنه. فرمانهای اجرایی نیتیو کاربرد خودشون رو دارن، و فرمانهای اجرایی غیرنیتیو هم کاربرد خودشون رو. اصلا نیتیو بودن یا نبودن در ذات خودش مهم نیست، و غیرنیتیو بودن و نبودن یک امر نسبی هست که در خیلی موارد مرزهای اون کاملا دقیق و مشخص نیست و اصولا اگر بخوایم یک تعریف مطلق و کامل ازش ارائه کنیم، احتمالا خیلی برنامه هایی که شما بهشون میگید نیتیو، نیتیو خالص نخواهند بود و بخشهایی غیرنیتیو خواهند داشت.
در زبانهای تفسیری، بایت کد، و محیط اجرای Managed به این خاطر کد بصورت غیرنیتیو هست چون عملا بدست آوردن اون مزایا و امکانات به روش نیتیو، غیرممکن یا خیلی دشوار و پر هزینه بوده. نیتیو و غیرنیتیو چیزی نیست که به خودی خودش ارزشی داشته باشه و بخوایم بگیم این دوتا با هم خیلی متفاوت و متضاد هم هستن، بلکه صرفا لایه ها و روشهایی برای مهندسی و اجرای نرم افزار هستن که نهایتا هم همه به دستورات نیتیو تبدیل و اجرا میشن. منتها یکی یه لایهء واسط یا ناظر داره و یکی مستقیم تر هست. و اینا هم همونطور که گفتم همه نسبی هستن و اغلب نیتیو یا غیرنیتیو کاملا خالص نداریم. لایه بندی و انتزاع در برنامه نویسی و سیستم عامل، چیزی که ماهیتا خیلی با نیتیو و غیرنیتیو تفاوت بکنه نیست. چون همه روشهایی برای کم کردن و راحت کردن و سریع کردن کار برنامه نویسی و نگهداری و گسترشهای آینده هستن که برای تامین این اهداف، از چیزهایی مثل سرعت و مصرف منابع هزینه میکنن. این لایه ها، کتابخانه ها، محیط تفسیری، Managed و غیره، از دید یک آدم دانشمند حرفه ای که صرفا با معیارهای عقلانی تحلیل میکنه، صرفا ابزارها و روشهای متفاوتی برای تامین اهداف مشابه یا متفاوتی هستن. مثلا شما در برنامه نویسی با سی++ هم از خیلی از این لایه ها/انتزاع ها و کتابخانه ها و سرویسهای آماده بصورت روزمره استفاده میکنید. شما ممکنه بگید خب این کتابخانه ها به زبان نیتیو هستن، اما فکر میکنید کل دات نت هم در نهایتش نمیتونه نیتیو شمرده بشه و آیا یک برنامهء دات نت هیچ کد نیتوی نداره؟
این حرف شما درست نیست.
چون فتوشاپ یا نرو و اتوکد که فقط بخشهای هسته ای اونها نیستن.
به یک مجموعهء کامل از تمام بخشهای این نرم افزارها هست که میگن فتوشاپ و اتوکد و غیره.
و این بخشها شامل همه چیز میشن، از هسته تا رابط کاربری تا امکان گسترش پذیری و غیره.
بنابراین وقتی نرو نسخهء جدید رو نصب میکنی دات نت رو هم نصب میکنه، یا اتوکد رو، یا بعضی نرم افزارهای دیگر رو، و گزینه ای هم برای غیرفعال کردن نصب حجیم و زمانبر دات نت وجود نداره، میشه گفت توسعه با دات نت در این نرم افزارهای مشهور هم رسوخ کرده. حالا کاربردش هرچی میخواد باشه. هرچند بعضی کاربردها برجسته تر و مهمتر هستن و نشانهء موفقیت و قدرت بیشتر دات نت و بعضی کمتر. اما بهرحال همش یک نوع کاربرد و فراگیر شدن دات نت بحساب میاد. وگرنه چه ضرورتی داشته که این نرم افزارها رو بصورت اساسی به نصب دات نت وابسته بکنن؟ حالا میخواد این بخاطر کیفیت دات نت باشه یا بخاطر سیاست های میکروسافت که دیگران رو وادار میکنه و غیره، من فعلا سر این بحثی ندارم. اما چیزی که دیده میشه اینه که این روند در برنامه نویسی ویندوز، اجتناب ناپذیر هست و انتظار میره در آیندهء نزدیک دات نت حداقل بخش بزرگی از برنامه نویسی اینترفیس و اپلیکیشن های عمومی رو در دنیا تشکیل بده. هیچ راه گریزی هم نیست، چون دات نت سرعت و راحتی توسعهء بهتری داره برای این کاربردها و سیاست های میکروسافت هم احتمالا مزید بر علت میشه.
ضمنا بنده درسته توی سی شارپ و دات نت تازه کار هستم، اما قبلا با زبانها و فریمورک های دیگه کار کردم و هرچیزی رو یاد میگیرم اصولی و با تمام جزییات لازم یاد میگیرم. مثلا کدوم یکی از این دات نت کارهای با تجربه نشستن اول Language Specification رسمی سی شارپ رو بخونن؟ خیلی چیزهای توش هست که شما با خوندن متوجه میشید ساختار این زبان و فریمورک چقدر منعطف و آینده نگرانه و مناسب توسعه و نگهداری راحت و سریع طراحی شده. خیلی از این موارد رو در برنامه نویسی اپلیکیشن و کتابهای سی شارپ و دات نت نمیشه دید و فقط وقتی Language Specification رو بخونید و از برنامه نویسی های سطح پایین تر سردربیارید متوجه میشید.
مثلا من متوجه شدم که توسعهء کتابخانه های سطح بالای دات نت (یعنی اون کتابخانه هایی که برنامه نویسان اپلیکیشن عادی فقط ازشون استفاده میکنن) سریعتر و راحتتر و دارای ساختار و ظرفیت بسیار بهتری نسبت به زبانهایی مثل سی++ هست. خب خود این عامل آیا کمک نخواهد کرد که کتابخانه های لازم برای این زبان و فریمورک خیلی راحتتر و سریعتر و بهتر از کتابخانه برای زبانهای دیگر توسعه داده بشن و آیا این موجب موفقیت سی شارپ نخواهد شد؟
منظورم فقط این بود که در عمدهء اپلیکیشن های عادی ما نیازی به استفاده از کتابخانه های سطح پایین و زبانهایی که کد native تولید کنن نداریم.نقل قول:
چه ربطی داره ؟! الان شما تو تو ASP.NET نمیتونی فیلم پخش کنی ؟ تو PHP چی ؟ خوب پس بیایم بگیم آقا با ASP.NET فتوشاپ رونوشتن چون ASP.NET فیلم پخش میکنه و پشت صحنه هم دست به دامن کدهای C هست !
چون بعضیا طوری از گرافیک و فتوشاپ و غیره صحبت میکنن انگار اینها برنامه نویسی های خیلی متداولی هستن که در اپلیکیشن های زیادی باهاشون برخورد میکنیم.
اما بخش نیازهای اپلیکیشن نویسی عادی، حتی بصورت گرافیک و مالتی مدیا و انیمیشن و غیره، در دات نت هم قابل برآورده کردن هست.
کدوم یکی از کاربران این سایت یک برنامه درحد یک دهم فتوشاپ هم نوشته؟
من میگم اینطور برنامه ها به بحث ما ربطی ندارن چون من از نوشتن تمام برنامه ها با دات نت صحبت نکردم. من از نوشته شدن بیشتر اپلیکیشن های عادی که بیشتر برنامه نویس ها عمده یا تمام کارشون همینه صحبت میکنم.
وقتی میگید فتوشاپ و اتوکد و غیره نمیشه با دات نت نوشته بشن، علاوه بر کلی و مبهم بودن و تقریبا اشتباه بودن این گفتار به همون دلایلی که در بالاتر گفتم، باعث القای این تفکر به تازه کارها میشید که این نشون میده که دات نت ضعیف تر از زبانهایی مثل سی++ بحساب میاد. درصورتیکه دات نت فقط در زمینه های محدودی که در خیلی کاربردها امروزه اهمیت و اولویت بالایی ندارن ضعیف تر هست و عوضش در زمینه های دیگری که امروزه از اهمیت و اولویت بالایی برخوردار هستن، واقعا برجسته و پیشرفته تر از زبانهایی مثل سی++ هست.
من جایی میخوندم که از خالق زبان سی++ پرسیده بودن که اگر میخواستی زبان سی++ رو امروز از اول طراحی کنی آیا به همین صورت طراحیش میکردی؟ پاسخ داده بود این چه سوالیه معلومه که نه! چون الان دانش و تجربهء بیشتری دارم و بصورت بهتر و کاملتری طراحیش میکردم.
ببینید شما اهل لجبازی و کل کل و گیر دادن بچه گانه هستید انگار!نقل قول:
دلت خوشه ها !
اولا که اینطور نیست و دوما اگر اینطور هم باشه ؛ موندم به چیه Net. تو این زمینه مینازید ؟ اینکه GUI یه برنامه رو باهاش میسازن ؟!
نازیدن یعنی چی؟
مگه میخوایم با این زبانها با همدیگه کشتی بگیریم؟
یا هرکس کارها رو از راه سخت تر انجام بده برنده میشه!!
آدم قوی و عاقل اونی هست که از هرچیزی به جای خودش استفاده کنه و این توانایی رو داشته باشه. یه چیزی که خیلی جاها سره و قوی بحساب میاد ممکنه در یک حیطهء خاصی حرفی برای گفتن نداشته باشه درمقابل ابزار بهتری که در اون حیطه و کاربردها وجود داره.
داخل شهر من که اتومبیل پژو 206 سوار میشم، خیلی راحتتر و سریعتر از شما که مثلا یه ماشین خیلی قوی و پرمصرف و بزرگ سوار بشید کارهام رو انجام میدم و این شمایید که بازنده شدید و کار نامعقولی کردید. حالا دلتون به این خوش باشه که اون ماشین قوی تر و محکم تره و فضا و سرعت بیشتری داره و کارهای بیشتری میشه باهاش انجام داد و غیره.
اولا از خیلی از مزایای اون ماشین در داخل شهر عملا استفاده نمیشه یا خیلی کمتر اهمیت دارن، دوما مصرفش زیاده و خرج نگهداری و تعمیرش، سوما اتومبیل من مزایایی داره برای داخل شهر که اتومبیل شما نداره، و چهارما مثلا در داخل شهر امنیت و غیره رو هم بحد کافی تامین میکنه چون کسی داخل شهر با سرعت 200 کیلومتر بر ساعت حرکت نمیکنه. حالا نهایتش شاید کمی امنیتش کمتر باشه، اما درمقابل مزایایی که در داخل شهر و برای نیازهای روزمره اهمیت بیشتری دارن، هیچ دلیلی برای عدم انتخابش نیست.
بنابراین 206 ماشین خیلی خوبی برای کارهای روزمرهء ما داخل شهر هست و بیشتر یا حداقل بخش بزرگی از کارهای ما هم از اینطور کارهای داخل شهر هست.
اون کسی که 206 رو ساخته مسلما مثل شما ... نبوده! (جای سه نقطه هرچی فکر میکنید منصفانه هست بذارید) و برای بشریت خیلی مفیدتر و قوی تر عمل کرده و چیز مفیدی رو ارائه داده. منم واقعا به 206 مینازم! بدون تعارف. چون بسیار هوشمندانه و بهینه هست و اغلب کم نمیاره و این شما هستید که کار نامعقول میکنید و یه جاهایی کم خواهید آورد. مثلا من توی یه جای پارک کوچک راحت پارک میکنم توی شلوغی شهر یا راحتتر و چابک تر در ترافیک حرکت میکنم، اما شما آواره و بیچاره میشید :لبخند:
البته وب رو فراموش نکنید. اگر بحث کلی باشه باید بگیم اکثریت اپلیکیشن های وب، از نوع غیرنیتیو هستن. بنظر شما حجم و اهمیت این برنامه ها چقدر هست؟نقل قول:
چون اینطور نیست ، اگر بود این همه برنامه به صورت Native توسعه داده نمیشد ، تعداد برنامه هایی که به صورت Managed و تجاری توسعه داده میشه در مقابل برنامه های Native در همین حوضه 1/100 هم نیست .
قسمت های هسته ای اونها رو نمیتونه. اما خیلی بخشهای دیگه رو میتونه.نقل قول:
دقیقا ؛ اون برنامه هایی که در بالا نام بردید هم چون Net. به هیچ وجه حتی نمیتونه قسمتی از اون رو پیاده کنه به صورت Native توسعه داده میشن .
ضمنا یطوری صحبت میکنید انگار با دات نت نمیشه بیشتر اپلیکیشن های عادی رو هم نوشت!!
این تفکر و ادعا بیشتر شایسته شماست.نقل قول:
این تاپیک داره از بحث اصلیش خارج میشه و من دیگه اینجا کاری ندارم ؛ شما هم اگر هنوز روی یکّه تاز بودن Net. پافشاری داری یکم دیدت رو وسیع تر کن .
یاد بگیرید یخورده ... داشته باشید و دیگران رو مثل خودتون فرض نکنید و همینطوری به هرکس میرسید یه برچسب ناشایست نچسبونید.