جناب shervin_agh67 حرف های شما را به نوعی تقریبا تایید می کنم، به جز نکات زیر که باید در نظر گرفته شود، لذا توضیحاتی می دهم:
دقیقا برعکس... طبق آمارهای رسمی قوی ترین و بیشترین کتاب ها و مقالات با زبان ++C/C است، بیشترین پست های فروم های دنیا و کتابخانه های جانبی نیز برای زبان ++C/C هست.1. عدم وجود منابع قوی و افراد خبره :
حتی شما اسناد و مقالات فنی MSDN برای بخش ++C/C را نمی توانید به هیچ عنوانی با مثلا اسناد .Net مقایسه کنید.
پس اگر کسی بگوید منابع کم است، دقیقا می رساند که در حال صحبت کردن در مورد منابع به زبان فارسی هست. یکی از دلایل سخت جلوه کردن این زبان در قسمت مطالب پیشرفته همین مشکل هست، مثلا با توجه به تجربه ام 98% دانشجویان (98 از 100 نفر!) تا پایان تحصیلات هنوز نمی توانند حتی در ارائه مقالات خودشان از مطالب انگلیسی به درستی استفاده کنند و این برایشان مفهموم کمبود منبع است در حالی که حقیقتا این طور نیست!
اینجاست که حرف شما را تایید می کنم، اگر کسی واقعا همت تحمل کردن سختی این راه را ندارد و به ویژه از دانش متوسط زبان انگلیسی برخوردار نیستند، بهتر هست وارد این حوزه نشود...
مخصوصا کسانی که حتی با مطالعه کتاب های فارسی این زبان، برای مسائل ساده کنسولی کم می آورند یا خودشان به تنهایی با این همه مرجع نمی توانند آن را حل کنند.
این موضوع هم بر می گردد به عدم اطلاع دقیق از کتابخانه های استاندارد این زبان و هزاران کتابخانه کد باز و رایگان آن، مخصوصا در کشور ما.اصولا برنامه نویسان حرفه ای سی بیشتر از برنامه نویسان سطح بالا به ماژولهای نوشته شده پیشین خود وابسته اند در صورتی که این کار رو نکنن ... ( خدا می دونه پروژه کی تموم می شه) . حالا حساب کنید منی که تازه وارد این زبان شدم چند سال باید وقت بگذارم تا یک کتابخانه کامل برای خودم بنویسم ؟
حدود سال 1995 کتابخانه STL به صورت استاندارد به زبان ++C اضافه شد و تقریبا اکثر اگوریتم های مهم در ساختمان داده و ریاضیات به آن اضافه شد (لیست پیوندی، انواع مرتب سازی ها، درخت ها، معادلات برای دستگاه مختلط (complex) و اعمال ریاضی قابل انجام روی آن و اکثر مواردی که دانشجویان خودشان دستی می نویسند و در این فروم سوال می کنند). در نسخه بعدی ++C نیز تعداد زیادی توابع ریاضی مانند bessel و وLegendre و غیره نیز اضافه خواهد شد.
صدها تابع ریاضی پیشرفته دیگر در طرح استاندارد جدید مطرح شد که موافقت نشد، چرا؟
چون همه مردم دنیا به این موارد نیاز ندارند.
به هر حال تمام این ها جدا از این مطلب هست که به دلیل محبوبیت آن در سیستم های UNIX ده ها کتابخانه open Source و رایگان (مانند GMP ، apfloat و ..) برای مباحث پیشرفته محاسبات بر روی ارقام برزگ نیز وجود دارد.
و البته این موارد نیز در سایر زبان ها و تکنولوژی ها فراتر از این نیست!
اگر نگاهی به تبلیغات استخدامی بکنید ،هیچ کجا از شما نمی خواهد همه چیز را بدانید و در تمام زمینه ها خبره باشید، چون مطالب وسیع هست.خیلی ریزه کاری وجود داره که توی کتابها وجود نداره و همانطور که شما اشاره کردید باید توی مقاله ها به دنبال اون گشت .
به همین خاطر هست که در مقاطع بالاتر تحصیلی در دنیا برای کامپیوتر بیش از 10 گرایش وجود دارد، گرافیک، هوش مصنوعی، روبوتیک، کامپایلر، شبیه سازی، محیط چند رسانه ای، پردازش تصویری، محاسبات، شبکه، پردازش موازی ، سیستم عامل، زبان های برنامه نویسی، پایگاه داده و ...
(داخل پرانتز: یک سوال هوش، حال با این همه وسعت برنامه نویسان .Net ما در کدام حوزه فعالیت می کنند؟!)
پس بهتر هست افراد قبل از اینکه شروع به انتخاب این زبان کنند قبل از هر چیز، فیلد کاری خودشان را مشخص کنند و فقط روی آن به صورت تخصصی کار کنند و حتما روی سایر موارد نیز دانش داشته باشند اما می تواند کمتر از تخصص اصلی باشد.
من به این افراد می گویم حرفه ای ، یعنی حوزه اش باید مشخص باشد.
به هر حال دانش اسمبلی یک نیاز هست، نه لزوما به خاطر استفاده از آن، بلکه بیشتر هدف آشنایی با مفاهیم کار ماشین یا اشکال زدایی فوق حرفه ای است.ولی به نظر من کسی که می خواد برنامه نویسی ویژوال سی++ رو کار بکنه چون مفاهیمش با زبان ماشین خیلی درگیره بهتره که از زبان ماشین شروع کنه و به بررسی معماری ماشین هم بپردازه .
اما در نظر داشته باشید که منظور از برنامه نویسی سطح پایین در ++Visual C یا کلا ++C و کتابخانه های دیگر بحثی کاملا متفاوت از اسمبلی یا کلا زبان ماشین است و سختی این دو را به هیچ عنوان با هم مقایسه نکنید که هیچ شباهتی ندارند.
معمولا افراد تا زمانی که وارد این حوزه نشوند تفکرات خیلی ترسناکی می کنند!
امروزه با توجه به شیوه ها و تکنولوژی های جدید حتی در بحث ارتباط با سخت افزار نیز معمولا به استفاده مستقیم از اسمبلی نیاز نخواهید داشت.
** پس در یک کلام چیزی که شما با آن درگیر هستید مفاهیم کارکرد سیستم عامل مورد نظر هست نه زبان ماشین یا اسمبلی.
جای خوشحالی است، تفسیر خوبی بود .دلیلم هم برای شروع دوباره اینه که الان هرچی نگاه می کنم میبینم تا چشم کار می کنه برنامه نویس سطح بالا خبره وجود داره ولی در عرصه زبانهای سطح پائین مثل سی++ خیلی کم هست . همیشه شانس و پول خوب هم در زمینه هایی هست که کمتر کسی طرفش رفته ( البته دردسر هم هست).