Forwarded from Software Philosophy
نوشتن «بات» هوشمند در دنیای رقابتی باتها میتواند خیلی جذاب باشد. مدتی است مایکروسافت چند پروژه هوش مصنوعی را تحت عنوان Cognitive Science شروع کرده که به تشخیص عکس و تشخیص گفتار کمک میکند. همچنین امکان یکپارچه کردن آن با زیر ساخت Bot Framework میتواند منجر به تولید باتهای بسیار کارایی شود.
در لینک زیر نحوه استفاده از هوش مصنوعی پروژههای Cognitive در باتها آموزش داده شده است.
http://www.dotnetcurry.com/csharp/1281/simple-bot-using-microsoft-bot-framework-cognitive-services
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
در لینک زیر نحوه استفاده از هوش مصنوعی پروژههای Cognitive در باتها آموزش داده شده است.
http://www.dotnetcurry.com/csharp/1281/simple-bot-using-microsoft-bot-framework-cognitive-services
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Dotnetcurry
Simple Intelligent Bot using Microsoft Bot Framework & Cognitive Services | DotNetCurry
Microsoft Bot Framework and Cognitive Services are Intelligent API offerings which that allow systems to see, hear, speak, understand and interpret our needs with natural communication
#پست_مجدد این پست تا به حال بیش از ۱۱۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
مفهوم static class در زبانهای برنامه نویسی شیگرا میتواند بسیار گمراه کننده باشد. اصولا بهتر است معماری نرمافزار طوری انجام شود که کمترین نیاز به این نوع کلاس باشد. یکی از نکات مهم در مورد این مفهوم این است که برنامهنویسان باید حواسشان باشد با این مفهوم به عنوان «سطلی برای نگهداری کدهای متفرقه» استفاده نشود. معمولا کدی که به اندازه کافی به محل درست نوشتن آن فکر نشده، اولین مکانی که برای آن مناسب به نظر میرسد یک static class است.
لینک زیر مربوط به بخشی از کتاب Framework Design Guidelines (FDG) است که به طور کامل توضیح دادهاست که در چه مواقعی مجاز به استفاده از static class ها هستیم و چه مواقعی نه. این کتاب استانداردی است که تمام برنامهنویسان در مایکروسافت باید آن را مطالعه کرده باشند و نکات آن را رعایت کنند.
https://msdn.microsoft.com/en-us/library/ms229038(v=vs.110).aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
لینک زیر مربوط به بخشی از کتاب Framework Design Guidelines (FDG) است که به طور کامل توضیح دادهاست که در چه مواقعی مجاز به استفاده از static class ها هستیم و چه مواقعی نه. این کتاب استانداردی است که تمام برنامهنویسان در مایکروسافت باید آن را مطالعه کرده باشند و نکات آن را رعایت کنند.
https://msdn.microsoft.com/en-us/library/ms229038(v=vs.110).aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
مفهوم CQRS Pattern به عنوانی یکی از الگوهای رایجی است که نام آن در معماریهای جدید نرمافزار زیاد شنیده میشود. به طور خلاصه، این الگو جدا کردن معماری «خواندن» اطلاعات از معماری «نوشتن» اطلاعات است. هر عمل خواندن در نرمافزار توسط یک Query انجام میشود که هیچ تغییری در سیستم نمیدهد و فقط نتیجه خواندن را بر میگرداند. هر عمل نوشتن در سیستم از طریق یک Command انجام میشود که فقط تغییر را در سیستم اعمای میکند و هیچ اطلاعاتی بر نمیگرداند (به جز وضعیت موفق بودن عمل و یا پیغام خطا). این الگو بسیار کاربردی و قدرتمند است، ولی استفاده از آن در هر شرایطی مناسب نمیباشد.
مقاله زیر این الگو را به سادگی توضیح دادهاست و کاربرد آن را در معماریهای مختلف شرح دادهاست.
https://msdn.microsoft.com/en-us/library/jj591573.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
مقاله زیر این الگو را به سادگی توضیح دادهاست و کاربرد آن را در معماریهای مختلف شرح دادهاست.
https://msdn.microsoft.com/en-us/library/jj591573.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
دنیای AR یا Augmented Reality باعث ایجاد مفاهیم جدیدی در UI/UX شدهاست. توان خلق موجودیتها در فضای اطراف کاربر امکانی است که قبلا وجود نداشته و به همین دلیل ظهور AR باعث ایجاد تجربیات جدیدی در دنیای UX شدهاست.
برای مثال در لینک زیر یکی از طراحان ارشد هولوگرافیک توضیح میدهد که در نسخههای اولیه نرمافزار طراحی برای خلق اشیا سه بعدی، از یک «میز چهارگوش» مجازی استفاده شده بود که کاربر روی آن شروع به طراحی میکرد (مثلا طراحی یک اسباببازی). پس از تستهای UX متوجه شدند چهارگوش بودن میز باعث میشود کاربران بیشتر یک سمت میز بایستند و کمتر دور شیی که طراحی میکنند بچرخند. به همین دلیل در نسخههای بعدی از یک میز مجازی «گرد» استفاده شد. نتیجه عالی بود، کاربران دیگر یک جای ثابت نمیایستند و تقریبا هر دفعه از یک زاویه جدید محصول خود را میبینند.
در مقاله زیر طراح ارشد تجربیات خود و درسهایی که تا به حال از انجام پروژههای هولوگرافیک کسب کرده را توضیح داده و چند مثال جذاب دیگر را هم بیان کرده است.
https://developer.microsoft.com/en-us/windows/holographic/case_study_-_3_holostudio_ui_and_interaction_design_learnings
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
برای مثال در لینک زیر یکی از طراحان ارشد هولوگرافیک توضیح میدهد که در نسخههای اولیه نرمافزار طراحی برای خلق اشیا سه بعدی، از یک «میز چهارگوش» مجازی استفاده شده بود که کاربر روی آن شروع به طراحی میکرد (مثلا طراحی یک اسباببازی). پس از تستهای UX متوجه شدند چهارگوش بودن میز باعث میشود کاربران بیشتر یک سمت میز بایستند و کمتر دور شیی که طراحی میکنند بچرخند. به همین دلیل در نسخههای بعدی از یک میز مجازی «گرد» استفاده شد. نتیجه عالی بود، کاربران دیگر یک جای ثابت نمیایستند و تقریبا هر دفعه از یک زاویه جدید محصول خود را میبینند.
در مقاله زیر طراح ارشد تجربیات خود و درسهایی که تا به حال از انجام پروژههای هولوگرافیک کسب کرده را توضیح داده و چند مثال جذاب دیگر را هم بیان کرده است.
https://developer.microsoft.com/en-us/windows/holographic/case_study_-_3_holostudio_ui_and_interaction_design_learnings
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. اضافه کردن middleware به Owin Pipeline
https://telegram.me/SoftwarePhilosophy/529
۲. طراحی رابط کاربری برای من یا شما؟ (هم دیزاین)
https://telegram.me/SoftwarePhilosophy/530
۳. نحوه اضافه کردن هوش مصنوعی پروژههای Cognitive در باتها
https://telegram.me/SoftwarePhilosophy/532
۴. زمان و شیوه استفاده از Static Class ها برای برنامه نویسان مایکروسافت
https://telegram.me/SoftwarePhilosophy/534
۵. آشنایی با CQRS Pattern و کاربرد آن در معماریهای مختلف
https://telegram.me/SoftwarePhilosophy/535
۶. تجربیات و درسهای یک طراح ارشد پروژههای هولوگرافیک
https://telegram.me/SoftwarePhilosophy/536
ـــــــــــ
@SoftwarePhilosophy
۱. اضافه کردن middleware به Owin Pipeline
https://telegram.me/SoftwarePhilosophy/529
۲. طراحی رابط کاربری برای من یا شما؟ (هم دیزاین)
https://telegram.me/SoftwarePhilosophy/530
۳. نحوه اضافه کردن هوش مصنوعی پروژههای Cognitive در باتها
https://telegram.me/SoftwarePhilosophy/532
۴. زمان و شیوه استفاده از Static Class ها برای برنامه نویسان مایکروسافت
https://telegram.me/SoftwarePhilosophy/534
۵. آشنایی با CQRS Pattern و کاربرد آن در معماریهای مختلف
https://telegram.me/SoftwarePhilosophy/535
۶. تجربیات و درسهای یک طراح ارشد پروژههای هولوگرافیک
https://telegram.me/SoftwarePhilosophy/536
ـــــــــــ
@SoftwarePhilosophy
نسخه بعدی زبان جاوا یا Java 9 در راه است. مهمترین امکانات اضافه شده در نسخه قبلی Java 8 مفهوم Lambda، Stream و تغییرات API بود. در نسخه جدید Java 9 مهمترین تغییر، پروژه Jigsaw است که هدف آن شکستن JRE به قطعات کوچک و ماژولار کردن کامپوننتهای Java core است تا بتوان از آن در دستگاههای محاسباتی کوچک به راحتی استفاده کرد. ولی به غیر از این تغییر اساسی، تغییرات جذاب دیگری نیز در راه است. مهمترین این تغییرات عبارتند از:
1. Java + REPL (jshell)
2. Microbenchmarks
3. G1: a new garbage collector (maybe)
4. Full support for HTTP 2.0
5. Process API
6. Debugging in Production
در مقاله زیر این امکانات توضیح داده شدهاند. همچنین در مورد تصمیمگیری برای اضافه کردن G1 به Java 9 و وضعیت آن صحبت شدهاست.
http://blog.takipi.com/5-features-in-java-9-that-will-change-how-you-develop-software-and-2-that-wont
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
1. Java + REPL (jshell)
2. Microbenchmarks
3. G1: a new garbage collector (maybe)
4. Full support for HTTP 2.0
5. Process API
6. Debugging in Production
در مقاله زیر این امکانات توضیح داده شدهاند. همچنین در مورد تصمیمگیری برای اضافه کردن G1 به Java 9 و وضعیت آن صحبت شدهاست.
http://blog.takipi.com/5-features-in-java-9-that-will-change-how-you-develop-software-and-2-that-wont
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
OverOps Blog
5 Features in Java 9 that WILL Change How You Develop Software (and 2 That Won’t) | OverOps Blog
What are the most exciting features that are expected to be released in Java 9?
#پست_مجدد این پست تا به حال بیش از ۱۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
مطمئنا برای خیلی از ما پیش آمده است که یک صحفه را طراحی کردهایم و در browser مان همه چیز مرتب و به قاعده است، اما بعد از ریلیز روی سایت از دوستان و اطرافیانتان می شنویم که صفحه به هم ریخته و نامرتب بنظر میرسد.
نگذارید این اتفاق برای شما هم بیافتد. بعد از انجام کار زمان لازم را برای تست صفحه وب خود روی browserهای مختلف بگذارید.
اگر همه browserها را روی رایانه خود نصب ندارید، ابزارهای آنلاینی وجود دارد که می توانید با استفاده از آنها صفحه وب خود را در browserهای مختلف و ورژنهای مختلف آنها تست کنید. از جمله این سایتها:
• The Browser Sandbox
• BrowserShots.org
• CrossBrowserTesting.com
مقاله زیر به شرح این مشکل پرداخته و راه کارهایی را پیشنهاد کرده و مختصر توضیحی از سایت های ذکر شده ارائه کرده است.
http://www.digitalfamily.com/tutorials/test-your-website-in-differen-web-browsers/
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
نگذارید این اتفاق برای شما هم بیافتد. بعد از انجام کار زمان لازم را برای تست صفحه وب خود روی browserهای مختلف بگذارید.
اگر همه browserها را روی رایانه خود نصب ندارید، ابزارهای آنلاینی وجود دارد که می توانید با استفاده از آنها صفحه وب خود را در browserهای مختلف و ورژنهای مختلف آنها تست کنید. از جمله این سایتها:
• The Browser Sandbox
• BrowserShots.org
• CrossBrowserTesting.com
مقاله زیر به شرح این مشکل پرداخته و راه کارهایی را پیشنهاد کرده و مختصر توضیحی از سایت های ذکر شده ارائه کرده است.
http://www.digitalfamily.com/tutorials/test-your-website-in-differen-web-browsers/
#مریم_داودی
لینکدین:
https://www.linkedin.com/in/maryam-davoudi-7913565a
کانال تلگرام:
@SoftwarePhilosophy
___
#پست_مجدد این پست تا به حال بیش از ۱۰۰۰ بار مشاهده شده و به نظر میرسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
دیباگ کردن به سبک جغدها
حتما تا به حال برنامهنویسی را دیدهاید که ساعتها «مانند جغد» به مانیتور زل زده و حتی به به کیبورد و ماوس دست نمیزند، ولی ادعا میکند در حال دیباگ کردن (پیدا کردن خطا) برنامه است!
در حقیقت او در حال انجام نوع خاصی از دیباگ به نام Owlly Debugging یا دیباگ کردن به سبک جغدها است.
حقیقت این است که زبانهای برنامهنویسی، تکنولوژیها و پلتفرمهایی وجود دارند که به شما امکانات زیادی برای دیباگ کردن نمیدهند و برنامه نویس برای پیدا کردن خطا چارهای به جز خواندن و حدس خطا ندارد. زبانهای Declarative مانند SQL، تکنیکهایی مانند AOP و مفاهیمی مانند MVVM همگی از این نوع هستند.
http://mehrandvd.me/2016/08/30/owlly-debugging-debugging-like-owl/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
حتما تا به حال برنامهنویسی را دیدهاید که ساعتها «مانند جغد» به مانیتور زل زده و حتی به به کیبورد و ماوس دست نمیزند، ولی ادعا میکند در حال دیباگ کردن (پیدا کردن خطا) برنامه است!
در حقیقت او در حال انجام نوع خاصی از دیباگ به نام Owlly Debugging یا دیباگ کردن به سبک جغدها است.
حقیقت این است که زبانهای برنامهنویسی، تکنولوژیها و پلتفرمهایی وجود دارند که به شما امکانات زیادی برای دیباگ کردن نمیدهند و برنامه نویس برای پیدا کردن خطا چارهای به جز خواندن و حدس خطا ندارد. زبانهای Declarative مانند SQL، تکنیکهایی مانند AOP و مفاهیمی مانند MVVM همگی از این نوع هستند.
http://mehrandvd.me/2016/08/30/owlly-debugging-debugging-like-owl/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Dot Philosophy
Owlly Debugging: Debugging Like an Owl - Dot Philosophy
Have you ever seen a developer, staring thoughtfully at the monitor for a long moment, not even touching the keyboard and mouse, and still claims that he is debugging some piece of code! It is true, there is some kind of code that could not be debugged line…
سازگاری با مرورگرهای مختلف از ابتدا برای طراحان مشکلاتی را در بر داشته و مشکل از جایی عمیقتر میشود که این مرورگرها نسخههای متفاوتی دارند و شما نمیتوانید همه آنها را کنار هم داشته باشید، بخصوص که این روزها استفاده از مروگرهای تلفن همراه و تبلتها نیز بالا رفته است. پس وبسایت شما باید با همه مرورگرها سازگار و یا اصطلاحا cross-browser باشد .
از بین سرویسدهندگانی که این تستها را انجام میدهند شاید یکی از بهترین سرویسدهندگان، BrowserStack باشد. با استفاده از این سرویس میتوانید سایت خود را در بیشتر از 1000 نسخهی از مرورگرهای مختلف تست کنید. این تنوع شامل دستگاهها و حتی سیستم عاملهای مختلف میشود. همینطور این امکان را به شما میدهد تا بتوانید نسخهی اجرای شدهی سایت خود را در نسخههای مختلف مرورگرها، حتی دستگاههای مختلف توسط اسکرین شات ببنید. مهمترین قابلیت آن تست سایتهای local و خصوصی به اکثر زبانهای برنامه نویسی میباشد.
میتوانید به کمک لینک زیر از سایت خود روی مرورگرهای مختلف اسکرین شات بگیرید.
https://www.browserstack.com/screenshots
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
از بین سرویسدهندگانی که این تستها را انجام میدهند شاید یکی از بهترین سرویسدهندگان، BrowserStack باشد. با استفاده از این سرویس میتوانید سایت خود را در بیشتر از 1000 نسخهی از مرورگرهای مختلف تست کنید. این تنوع شامل دستگاهها و حتی سیستم عاملهای مختلف میشود. همینطور این امکان را به شما میدهد تا بتوانید نسخهی اجرای شدهی سایت خود را در نسخههای مختلف مرورگرها، حتی دستگاههای مختلف توسط اسکرین شات ببنید. مهمترین قابلیت آن تست سایتهای local و خصوصی به اکثر زبانهای برنامه نویسی میباشد.
میتوانید به کمک لینک زیر از سایت خود روی مرورگرهای مختلف اسکرین شات بگیرید.
https://www.browserstack.com/screenshots
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
Browserstack
Browser Screenshots For Quick Testing On 3000+ Real Browsers | BrowserStack
Generate Screenshots of your Website on Chrome, IE, Firefox and Safari to test for Cross Browser compatibility on desktop browsers and real mobile devices.
Forwarded from Software Philosophy
اگر دوستانی دارید که نه تنها برنامه نویس هستند، بلکه اعتقاد دارید «مهندس نرمافزار» هم هستند، آنها را به کانال @SoftwarePhilosophy دعوت کنید.
این پیغام را برای آنها Forward کنید.
این پیغام را برای آنها Forward کنید.
مفهوم «Saga» در معماری نرمافزار مفهومی است که اخیرا در مقالههای مربوط به CQRS Pattern بسیار زیاد از آن صحبت میشود.
با این که مفهوم بیشتر از طریق CQRS شناخته شدهاست ولی در حقیقت این مفهوم از قبل وجود داشتهاست. مفهوم Saga اولین بار در مقالهای با نام «Sagas» توسط «هکتور گارسیا» و «کنت سالم» در سال سال ۱۹۸۷ معرفی شد. لینک زیر این مفهوم را با نام «Process Manager» معرفی کرده و این نام را نام بهتری برای این مفهوم دانسته.
مطلب زیر یکی از بهترین منابع برای آشنایی با مفهوم Saga است که به سادگی آن را توضیح داده است. در این مقاله مفهوم Saga با یک مثال ساده بیزنسی شرح داده شده و کاربرد آن در مقایسه با سایر روشها بررسی شدهآست.
https://msdn.microsoft.com/en-us/library/jj591569.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
با این که مفهوم بیشتر از طریق CQRS شناخته شدهاست ولی در حقیقت این مفهوم از قبل وجود داشتهاست. مفهوم Saga اولین بار در مقالهای با نام «Sagas» توسط «هکتور گارسیا» و «کنت سالم» در سال سال ۱۹۸۷ معرفی شد. لینک زیر این مفهوم را با نام «Process Manager» معرفی کرده و این نام را نام بهتری برای این مفهوم دانسته.
مطلب زیر یکی از بهترین منابع برای آشنایی با مفهوم Saga است که به سادگی آن را توضیح داده است. در این مقاله مفهوم Saga با یک مثال ساده بیزنسی شرح داده شده و کاربرد آن در مقایسه با سایر روشها بررسی شدهآست.
https://msdn.microsoft.com/en-us/library/jj591569.aspx
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Docs
Reference 6: A Saga on Sagas
یکی از محصولاتی که بصورت تخصصی در حوزه مجازی سازی در لایه سیستم عامل فعالیت میکند Docker می باشد . داکر یک محصول Open Source است که فرایند ایجاد، توسعه و اجرا کردن Application ها را با استفاده از Container ها ساده میکند. Container ها به یک برنامه نویس این اجازه را میدهد که application خود را با تمامی اجزای مورد نیاز آن اعم از فایلهای dll و کلیه library ها، کلیه وابستگی ها در قالب یک بسته نرم افزاری بیرون بدهد به شکلی که از بیرون یک نرم افزار واحد به نظر برسد.
از ویژگی های اصلی Docker میتوان به Open Source بودن محصول، سبک بودن، Deploy سریع اپلیکیشن، قابلیت جابجایی Containerها بین ماشینهای مختلف و قابلیت ورژن کنترل Containerها میباشد.
لینک زیر در مورد مکانیزم Docker و ویژگیهای آن توضیح میهد.
http://www.zdnet.com/article/what-is-docker-and-why-is-it-so-darn-popular
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
از ویژگی های اصلی Docker میتوان به Open Source بودن محصول، سبک بودن، Deploy سریع اپلیکیشن، قابلیت جابجایی Containerها بین ماشینهای مختلف و قابلیت ورژن کنترل Containerها میباشد.
لینک زیر در مورد مکانیزم Docker و ویژگیهای آن توضیح میهد.
http://www.zdnet.com/article/what-is-docker-and-why-is-it-so-darn-popular
#محمدرضا_جلیلوند
لینکدین:
http://ir.linkedin.com/in/mohammad-reza-jalilvand-0a5572b1
کانال تلگرام:
@SoftwarePhilosophy
___
ZDNET
What is Docker and why is it so darn popular?
Docker, a new container technology, is hotter than hot because it makes it possible to get far more apps running on the same old servers and it also makes it very easy to package and ship programs. Here's what you need to know about it.
#خلاصه_مطالب «فلسفه نرمافزار» در هفته گذشته:
۱. امکانات اضافه شده به نسخه آینده زبان جاوا (Java 9):
https://telegram.me/SoftwarePhilosophy/538
۲. ابزاری برای تست صفحات وب در browser های مخلتف:
https://telegram.me/SoftwarePhilosophy/540
۳. دیباگ کردن به سبک جغدها:
https://telegram.me/SoftwarePhilosophy/542
۴. ابزاری برای تست صفحات وب در browser های مخلتف به همراه اسکرینشات:
https://telegram.me/SoftwarePhilosophy/543
۵. مفهوم Saga در معماری نرمافزار:
https://telegram.me/SoftwarePhilosophy/545
۶. پلتفرم اوپن سورس Docker و نحوه عملکرد آن:
https://telegram.me/SoftwarePhilosophy/546
ـــــــــــ
@SoftwarePhilosophy
۱. امکانات اضافه شده به نسخه آینده زبان جاوا (Java 9):
https://telegram.me/SoftwarePhilosophy/538
۲. ابزاری برای تست صفحات وب در browser های مخلتف:
https://telegram.me/SoftwarePhilosophy/540
۳. دیباگ کردن به سبک جغدها:
https://telegram.me/SoftwarePhilosophy/542
۴. ابزاری برای تست صفحات وب در browser های مخلتف به همراه اسکرینشات:
https://telegram.me/SoftwarePhilosophy/543
۵. مفهوم Saga در معماری نرمافزار:
https://telegram.me/SoftwarePhilosophy/545
۶. پلتفرم اوپن سورس Docker و نحوه عملکرد آن:
https://telegram.me/SoftwarePhilosophy/546
ـــــــــــ
@SoftwarePhilosophy
گرفتن امتیاز ۴۰۰ در Telegram Lumberjack با استفاده یک بات برنامهنویسی شده!!!
https://www.youtube.com/watch?v=w3SsDhT7r2Y
کانال تلگرام:
@SoftwarePhilosophy
___
https://www.youtube.com/watch?v=w3SsDhT7r2Y
کانال تلگرام:
@SoftwarePhilosophy
___
YouTube
Cheat Telegram Lumberjack with this Bot
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
A very handy Telegram bot to cheat Telegram Lumberjack!
I've just wrote it for fun using plain C# 6.0.
Like more than 400 scores!? You can find more details about its programming details and executable…
A very handy Telegram bot to cheat Telegram Lumberjack!
I've just wrote it for fun using plain C# 6.0.
Like more than 400 scores!? You can find more details about its programming details and executable…
نوشتن بات برای بازیهای کامپیوتری یکی از تفریحاتی است که برای برنامهنویسان میتواند جذاب باشد. با اینکه این برنامهها معمولا جز برنامههای کوچک محسوب میشوند ولی معماری نرمافزاری آنها کماکان میتواند جذاب باشد. یکی از روشهای معماری این نرمافزارها مدل کردن جهان بازی است. در این معماری تمامی امکاناتی که یک بازی در اختیار کاربر قرار میدهد به طور انتزاعی طراحی میشود. برای مثال برای اینکه بازی ساده Telegram Lumberjack را مدل کرد باید بررسی کرد این بازی چه امکاناتی را در اختیار بازیگر قرار میدهد. برای مثال یک عامل میتواند با گرفتن فیلم از اسکرین و فرستادن دکمههای چپ و راست به موقع به عنوان یک بات برای این بازی عمل کند.
لینک زیر یکی از پیادهسازیهای ممکن برای گرفتن امتیازهای بالا در Telegram Lumberjack را شرح دادهاست.
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
لینک زیر یکی از پیادهسازیهای ممکن برای گرفتن امتیازهای بالا در Telegram Lumberjack را شرح دادهاست.
http://mehrandvd.me/2016/10/30/cheating-telegram-lumberjack/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
تکنولوژی Xamarin یکی از تکنولوژیهای توسعه برنامههای موبایل cross-platform است. سایت «تکنولوژی رادار» که توسط «مارتین فاولر» مدیریت میشود و به بررسی تکنولوژیها میپردازد، از سال ۲۰۱۵ این تکنولوژی را وارد حلقه Trial کرده است. ورود این تکنولوژی به حلقه Trial به این معنی است که به نظر متخصصان شرکت Thought Works، «این تکنولوژی ارزش دنبال کردن دارد و برای استفاده در محصولات شرکتهای بزرگی که حاضرند روی تکنولوژیهای جدید سرمایهگذای کنند مناسب است». تا قبل از سال ۲۰۱۵ این تکنولوژی در حلقه Assess قرار داشت که که به این معنی بود: « تکنولوژی جذابی است ولی هنوز شرکتها باید آن را بررسی کنند».
با آماده شدن این تکنولوژی برای توسعه برنامههای موبایل و کامپوننتهایی که برای آن نوشته شدهاست به نظر میرسد نسل جدیدی از برنامه نویسی موبایل شکل گیرد.
https://www.thoughtworks.com/radar/tools/xamarin
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
با آماده شدن این تکنولوژی برای توسعه برنامههای موبایل و کامپوننتهایی که برای آن نوشته شدهاست به نظر میرسد نسل جدیدی از برنامه نویسی موبایل شکل گیرد.
https://www.thoughtworks.com/radar/tools/xamarin
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Thoughtworks
Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks
What’s happening in the Tools quadrant of the ThoughtWorks Technology Radar? Discover what’s new or moved in the latest edition. Find out more #TWTechRadar
استایل برنامهنویسی JSFuck یک نوع خاص برنامهنویسی رمزگونه و آموزشی در JavaScript است. در این نوع برنامه نویسی فقط و فقط از ۶ کاراکتر «()+[]!» استفاده میشود و تمام المانهای مورد نیاز برنامه نویسی با استفاده فوت و فنها و trick های JavaScript معادلسازی شدهاند. برای مثال برای معادل عبارت false، ![] و برای true از !![] استفاده میشود. اینها trick هایی در زبان JavaScript هستند که معمولا توصیه میشود از آن دوری شود، ولی در این سبک همین تکنیکها پایه و اساس هستند. کشف راز هر کدام از این معادلها تفریح خوبی برای برنامهنویسان JavaScript است. چند معادلسازی جالب دیگر این روش عبارتند از:
1. false => ![]
2. true => !![]
3. undefined => [][[]]
4. NaN => +[![]]
5. 0 => +[]
6. 1 => +!+[]
7. 2 => !+[]+!+[]
به این ترتیب هر کد JavaScript را میتوان به سبک JSFuck هم نوشت! در سایت زیر ضمن معرفی این استایل برنامهنویسی، ابزاری برای encode کردن کد JavaScript به این سبک نیز وجود دارد.
http://www.jsfuck.com/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
1. false => ![]
2. true => !![]
3. undefined => [][[]]
4. NaN => +[![]]
5. 0 => +[]
6. 1 => +!+[]
7. 2 => !+[]+!+[]
به این ترتیب هر کد JavaScript را میتوان به سبک JSFuck هم نوشت! در سایت زیر ضمن معرفی این استایل برنامهنویسی، ابزاری برای encode کردن کد JavaScript به این سبک نیز وجود دارد.
http://www.jsfuck.com/
#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd
کانال تلگرام:
@SoftwarePhilosophy
___
Jsfuck
JSFuck - Write any JavaScript with 6 Characters: []()!+
JSFuck is an esoteric and educational programming style based on the atomic parts of JavaScript. It uses only six different characters to execute code.