انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: alend در 04 بهمن 1391، 01:29 بظ
-
یک زبان برنامه نویسی می خواستم که پردازش متن را به صورت بهینه و سریع انجام دهد:
R:
+ همه کار را راحت و سریع انجام میدهد.
- مشکل اشغال بیش از اندازه حافظه
++C:
+ بسیار عالی وسریع برای کامپیوتر
- برای برنامه نویس بسیار وقت گیر است.
BASH:
+ دارای توابع بسیار بهینه برای پردازش متن مثل join و sort
- این توابع بسیار محدودند و حلقه for بسیار کند است
ترجیح می دهم زبان مورد نظر comile شود و براحتی بتوان با آن پردازش موازی انجام داد و دارای کتابخانه غنی پردازش متن باشد و اگر دارای کتابخانه معادلات خطی هم باشد که دیگه عالی است.
-
من توی ویندوز که بودم با C# خیلی راحت کار میکردم این چیزا رو ، معادل C# هم که به اون قدرت باشه فک کنم جاوا باشه (من پایتون بلد نیستم ولی احتمال خیلی زیاد الان بچه ها میان ازش تعریف میکنن :دی !)
یه نگاه به این ۲ تا زبون بندازین دیگه c کار نمیکنین !
جاوا رو که با اینکه خودم زیاد بلد نیستم و قراره از فردا آموزشش رو کامل داریوش جان بهمون بده توی همین فروم ، اما واقعا تعریفشو خیلی شنیدم ، آخه C# واقعا قدرتمنده و جاوا هم در همون حدِ !
-
چه کاری میخواهید با متن ها انجام دهید ؟
sed و awk هم بد نیست
بش آنچنان باری روی پردازنده نخواهد گذاشت در برابر آسانی کارکردن با آن ، مگر اینکه توان پردازش محدود باشد یا حجم کار بسیار بالا .
میتوانید بخشهایی هم که در بش گمان میکنید کند است با c++ بنویسید و کامپایل کنید و در بش آن کامپایلیده ها را فرابخوانید .
-
یه نگاهی به D بنداز. فرمت برنامهنویسی شبیه C++ است با این تفاوت که لازم نیست خیلی با پوینترها و حافظه درگیر بشی مگر در موارد خیلی خاص. خاصیت تابعکی (فانکشنال) هم داره. بنابراین میتونی به راحتی یک تابع رو به یک مجموعه اعمال بکنی بدون اینکه نیاز باشه هی از حلقهها استفاده کنی. Qt هم داره. به راحتی روی لینوکس نصب و کامپایل میشه. یه نگاهی به اینجا (http://dlang.org/phobos/std_algorithm.html) و اینجا (http://dlang.org/phobos/std_string.html) بنداز ببین آیا تابعهای این کتابخونهها مفیدت هست یا نه. کلا برای پروژههای تحقیقاتی و متوسط به پایین قابل اعتماده.
-
چه کاری میخواهید با متن ها انجام دهید ؟
sed و awk هم بد نیست
بش آنچنان باری روی پردازنده نخواهد گذاشت در برابر آسانی کارکردن با آن ، مگر اینکه توان پردازش محدود باشد یا حجم کار بسیار بالا .
میتوانید بخشهایی هم که در بش گمان میکنید کند است با c++ بنویسید و کامپایل کنید و در بش آن کامپایلیده ها را فرابخوانید .
sed و awk را کار کردم، ولی حلقه for در این زبان (awk) خیلی کند است و کتابخانه هم ندارد. مثلا ترانس پوز یک فایل متنی.
++c عال ولی ۲ تا مشکل دارد:
۱- پیدا کردن باگ
۲- کتابخانه جامع پردازش متن
-
یه نگاهی به D بنداز. فرمت برنامهنویسی شبیه C++ است با این تفاوت که لازم نیست خیلی با پوینترها و حافظه درگیر بشی مگر در موارد خیلی خاص. خاصیت تابعکی (فانکشنال) هم داره. بنابراین میتونی به راحتی یک تابع رو به یک مجموعه اعمال بکنی بدون اینکه نیاز باشه هی از حلقهها استفاده کنی. Qt هم داره. به راحتی روی لینوکس نصب و کامپایل میشه. یه نگاهی به اینجا (http://dlang.org/phobos/std_algorithm.html) و اینجا (http://dlang.org/phobos/std_string.html) بنداز ببین آیا تابعهای این کتابخونهها مفیدت هست یا نه. کلا برای پروژههای تحقیقاتی و متوسط به پایین قابل اعتماده.
کتابخانه خوبی برای پردازش متن و پردازش موازی دارد.
مثلا در R می شود به راحتی ماتریس را ترانسپوز کرد، چند ستون حذف یا اضافه کرد.
-
من توی ویندوز که بودم با C# خیلی راحت کار میکردم این چیزا رو ، معادل C# هم که به اون قدرت باشه فک کنم جاوا باشه (من پایتون بلد نیستم ولی احتمال خیلی زیاد الان بچه ها میان ازش تعریف میکنن :دی !)
یه نگاه به این ۲ تا زبون بندازین دیگه c کار نمیکنین !
جاوا رو که با اینکه خودم زیاد بلد نیستم و قراره از فردا آموزشش رو کامل داریوش جان بهمون بده توی همین فروم ، اما واقعا تعریفشو خیلی شنیدم ، آخه C# واقعا قدرتمنده و جاوا هم در همون حدِ !
با C# قبلا کار کردم یک کتابخانه csml داشت برای ماتریکس که بیشتر نیازهام برطرف می کرد ولی خوب ویندوزی است!
-
یه نگاهی به D بنداز. فرمت برنامهنویسی شبیه C++ است با این تفاوت که لازم نیست خیلی با پوینترها و حافظه درگیر بشی مگر در موارد خیلی خاص. خاصیت تابعکی (فانکشنال) هم داره. بنابراین میتونی به راحتی یک تابع رو به یک مجموعه اعمال بکنی بدون اینکه نیاز باشه هی از حلقهها استفاده کنی. Qt هم داره. به راحتی روی لینوکس نصب و کامپایل میشه. یه نگاهی به اینجا (http://dlang.org/phobos/std_algorithm.html) و اینجا (http://dlang.org/phobos/std_string.html) بنداز ببین آیا تابعهای این کتابخونهها مفیدت هست یا نه. کلا برای پروژههای تحقیقاتی و متوسط به پایین قابل اعتماده.
کتابخانه خوبی برای پردازش متن و پردازش موازی دارد.
مثلا در R می شود به راحتی ماتریس را ترانسپوز کرد، چند ستون حذف یا اضافه کرد.
D هم کتابخونهای داره که همه این کارها رو انجام میده. اینجا (http://dlang.org/phobos/std_range.html#range) رو ببین.
-
زبانی که برای اینکار استاندارده پرل است.
The language provides powerful text processing facilities without the arbitrary data-length limits of many contemporary Unix tools,[8] facilitating easy manipulation of text files. Perl gained widespread popularity in the late 1990s as a CGI scripting language, in part due to its parsing abilities.[9]
ولی خب این روزها هر زبونی هر توانی رو داره (: تقریبا همه اسکریپت نویسی های جدید که به خوبی از رجکس پشتیبانی کنن برای این خوبن. از جمله پرل و پایتون.
-
سرعت و میزان استفاده حافظه perl برای کار با داده های حجیم قابل قبول است.
-
perl دقیقا برای پردازش متن ساخته شده ولی تنها اشکالش به نظر من اینه که کامپایل نمیشه و مفسر داره. مثل python که البته اون هم خوبه واسه این کار.