Programming Tips πŸ’‘
51.6K subscribers
67 photos
10 videos
30 files
354 links
Programming & AI:
Tips πŸ’‘
Articles πŸ“•
Resources πŸ‘Ύ
Design Patterns πŸ’Ž
Software Principles βœ…

πŸ‡³πŸ‡± Contact: @MoienTajik

🎯 Buy ads: https://telega.io/c/ProgrammingTip
Download Telegram
Google Material GuideLines for Implementation UI πŸ“–

The Material Design guidelines are a living document of visual, interactive, and motion guidance. πŸ’Ž

https://material.io/guidelines/

#Android #Material
@ProgrammingTipβ€Œ
Async & Await in JavaScript πŸ”₯

Async/Await will make your code simpler even more than you think. βœ…

Stop writing callback functions and love JavaScript ES7. πŸ’Ž

https://blog.patricktriest.com/what-is-async-await-why-should-you-care/

#JavaScript #CleanCode
@ProgrammingTip
Announcing .NET Core 2.0 πŸ”₯

.NET Core 2.0 is available today as a final release. πŸ“¦

You can start developing with it at the command line, in your favorite text editor, in Visual Studio 2017 15.3, Visual Studio Code or Visual Studio for Mac.

It is ready for production workloads, on your own hardware or your favorite cloud, like Microsoft Azure.

Microsoft also released ASP.NET Core 2.0 and Entity Framework Core 2.0 πŸ’Ž

https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-core-2-0/

Download SDK :
https://www.microsoft.com/net/download/core

γ€°γ€°γ€°γ€°γ€°γ€°
#DotNet #ASPNET #Core
@ProgrammingTip
πŸ“¦ Grab The Stack Trace Of An Exception πŸ“¦

Checking your code for errors is one of the most Painstaking – and frustrating – parts of the development process. πŸ™†πŸ»β€β™‚οΈ

It’s also horrendously Time-Consuming, particularly if you’ve a pesky error whose source isn’t immediately clear. πŸ’‘

Using this code, you can more easily track down where an Exception is occurring – and bring yourself that much closer to being rid of it. βœ…

Code
Exception e = …;
java.io.StringWriter sw = new java.io.StringWriter();
e.printStackTrace(new java.io.PrintWriter(sw));
String trace = sw.getBuffer().toString();


#java #exception #error #trick
@ProgrammingTip
Use String.valueOf() instead of toString() πŸ’Ž

If obj needs to be converted to string then the result of obj.toString() and String.valueOf(obj) will be same.

But String.valueOf() is Null Safe, means it will never throw NullPointerException. 🎯

Test test = null;

// Below statement will not throw NPE
System.out.println(String.valueOf(test));

// Next statement will throw NPE
System.out.println(test.toString())

γ€°γ€°γ€°γ€°γ€°γ€°
#java #string
@ProgrammingTip
JavaScript Clean Code πŸ› 

Use getters and setters πŸ’‘

Bad :
function makeBankAccount() {

return {
balance: 0,
// ...
};
}

const account = makeBankAccount();
account.balance = 100;


Good :
function makeBankAccount() {
let balance = 0;

function getBalance() {
return balance;
}

function setBalance(amount) {
balance = amount;
}

return {
getBalance,
setBalance,
};
}

const account = makeBankAccount();
account.setBalance(100);


βž–βž–βž–βž–βž–βž–
#JSTips #CleanCode
@ProgrammingTip
#Fun Is That integer or... !! πŸ€”
@ProgrammingTip
Value Types in the Real World 🌍

Suppose you’re reading something fantastic, and you want a friend to read it too. πŸ“œ

What do you need to give your friend so that he can read it too❓

To give your friend a copy, you’d need to photocopy all the pages and then give it to him, At that point, he has his own complete copy of the document. πŸ“ƒ

In this situation, you’re dealing with value type behavior❗️

All the information is directly in your hands, you don’t need to go anywhere else to get it.

Your copy of the information is also independent of your friend’s after you’ve made the copy. πŸ‘₯

You could add some notes to your pages, and his pages wouldn’t be changed at all.πŸ™…πŸ»β€β™‚οΈ

γ€°γ€°γ€°γ€°γ€°γ€°
#Types #ValueTypes
@ProgrammingTip
Reference Types in the Real World 🌍

Compare that with the situation where you’re reading a web page. 🌐

This time, all you have to give your friend is the URL of the web page. ↗️

This is reference type behavior, with the URL taking the place of the reference. ↔️

In order to read the document, you have to navigate the reference by putting the URL in your browser and asking it to load the page. ☝🏻

If the web page changes for some reason, both you and your friend will see that change the next time each of you loads the page. πŸ™‡πŸ»

γ€°γ€°γ€°γ€°γ€°γ€°
#Types #ReferenceTypes
@ProgrammingTip
GraphQL πŸ”₯

A query language for your API πŸ’Ž

GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.

GraphQL provides a complete and understandable description of the data in your API,
gives clients the power to ask for exactly what they need and nothing more,
makes it easier to evolve APIs over time,
and enables powerful developer tools.

http://graphql.org/
https://scaphold.io/
γ€°γ€°γ€°γ€°γ€°γ€°
#GraphQL #API
@ProgrammingTip
C# in Depth.pdf
12.1 MB
C# in Depth 3d Edition πŸ“•
Author : Jon Skeet πŸ–Š
Level : Advanced πŸ”
γ€°γ€°γ€°γ€°γ€°γ€°
#Book #CSharp
@ProgrammingTip
JavaScript Clean Code πŸ› 

Async/Await are even cleaner than Promises πŸ’‘

Bad :
get('https://en.wikipedia.org/wiki/Robert_Cecil_Martin')
.then((response) => {
return writeFile('article.html', response);
})
.then(() => {
console.log('File written');
})
.catch((err) => {
console.error(err);
});


Good :
async function getCleanCodeArticle() {
try {
const response = await get('https://en.wikipedia.org/wiki/Robert_Cecil_Martin');

await writeFile('article.html', response);

console.log('File written');
} catch(err) {
console.error(err);
}
}


βž–βž–βž–βž–βž–βž–
#JSTips #CleanCode
@ProgrammingTip
βž• Add Any Numbers Without β€œ+” Operator In C βž•

Bitwise operators can be used to perform the addition (+) operation as mentioned in below example πŸ”†

int Add(int x, int y)
{
if (y == 0)
return x;
else
return Add( x ^ y, (x & y) << 1);
}


γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°γ€°

#c #cpp #operator
@ProgrammingTip
Do casts if it's necessary ❗️

When you're casting an object, you are choosing to ask the compiler to trust you at compile time and to generate a check that will run at execution time to keep you honest. πŸ™‹πŸ»β€β™‚οΈ

#Casting
@ProgrammingTip
THX πŸ’Ž

This WebGL banner is so captivating ❗️
I can't stop playing with it, it's incredible. 😍

http://www.thx.com/

#WebGL #FreeTime
@ProgrammingTip
Code School Courses for Free πŸ’Ž

Just 1 day & 15 hours left. πŸ”Έ

https://www.codeschool.com/free-weekend

#Tutorial #Course
@ProgrammingTip
JavaScript Clean Code πŸ› 

Only comment things that have business logic complexity. πŸ’‘
Comments are an apology, not a requirement. Good code mostly documents itself.

Bad :
function hashIt(data) {
// The hash
let hash = 0;

// Length of string
const length = data.length;

// Loop through every character in data
for (let i = 0; i < length; i++) {
// Get character code.
const char = data.charCodeAt(i);
// Make the hash
hash = ((hash << 5) - hash) + char;
// Convert to 32-bit integer
hash &= hash;
}
}


Good :
function hashIt(data) {
let hash = 0;
const length = data.length;

for (let i = 0; i < length; i++) {
const char = data.charCodeAt(i);
hash = ((hash << 5) - hash) + char;

// Convert to 32-bit integer
hash &= hash;
}
}


βž–βž–βž–βž–βž–βž–
#JSTips #CleanCode
@ProgrammingTip
Road Map πŸ‘£

Front-End Web Developers πŸ’Ž

#RoadMap #FrontEnd
@ProgrammingTip
Road Map πŸ‘£

Back-End Web Developers πŸ› 

#RoadMap #BackEnd
@ProgrammingTip
Understanding Callbacks, Promises, Observables and async/await πŸ€·πŸ»β€β™‚οΈ

Whilst we only had callbacks for quite some time, in recent years promises, observables and lately async/await enriched the JavaScript world.

Let's take a closer look at these features and how they differ in this article❗️

https://academind.com/articles/javascript/callbacks-promises-observables-async-await

#JavaScript #Observables #Async #Promise
@ProgrammingTip