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
Clean Architecture with ASP.NET Core 2.1 πŸ¦‹

The explosive growth of web frameworks and the demands of users have changed the approach to building web applications. 🌐

Many challenges exist, and getting started can be a daunting prospect. Let's change that now. βœ…

This talk provides practical guidance and recommendations. πŸ’Ž

This video will cover architecture, technologies, tools, and frameworks. We will examine strategies for organizing your projects, folders and files. ⚑️

We will design a system that is simple to build and maintain - all the way from development to production. You leave this talk inspired and prepared to take your enterprise application development to the next level. πŸ”₯


https://t.me/pgimg/180

[ Video ] : kutt.it/cav
[ Source Code ] : kutt.it/cag

γ€°γ€°γ€°γ€°γ€°γ€°
#AspNet #Core #CleanCode
@ProgrammingTip
​​Notify Your Angular App Using SignalR πŸ”₯

In this small article we'll walk you through how to create a notification service using .NET Core 2.0 Web Api, .NET Core SignalR & Angular. πŸ’Ž

Let’s get into business. ✨


[ Article ] : kutt.it/ngnoti

γ€°γ€°γ€°γ€°γ€°γ€°
#AspMvc #Core #Angular #SignalR
@ProgrammingTip
Splitting.js ✨

Splitting creates elements and adds CSS variables to unlock amazing possibilities for animating text, grids, and more❗️


https://t.me/pgimg/181

[ Website ] : splitting.js.org
[ Github ] : kutt.it/splt

〰️〰️〰️〰️〰️〰️
#JavaScript #Animation
@ProgrammingTip
Boost Your Vue.js Workflow With Vue CLI 3 ⚑️

We can hardly imagine modern web development without the help of Command-Line Interface (CLI) tools. πŸ’»

They tremendously facilitate and speed up the development workflow by reducing the amount of repetitive and tedious tasks. βœ…

Setting up a project manually, with all the linting, building, testing, preprocessing, optimizing, and dependency tracking features, doesn't sound like a fun job, does it❓

That's why all modern client-side development frameworks (such as Angular, React, etc.) offer their own version of CLI tools, and Vue.js is no exception. πŸ’Ž

But with its latest third version, Vue CLI is going one step ahead of the others. ✨

It's now not only highly powerful and flexible, but also comes with a full-blown GUI. 🌈

Yeah, you heard right. Vue CLI 3 offers a full graphical user interface out of the box. πŸŒ€


https://t.me/pgimg/182

[ Article ] : kutt.it/vcli
[ Website ] : cli.vuejs.org

〰️〰️〰️〰️〰️〰️
#Vue #JavaScript #CLI
@ProgrammingTip
FAQGURU πŸš€

A list of interview questions. ⁉️

This repository is everything you need to prepare for your technical interview. βœ…

A collection of super-popular Interview questions, along with answers, and some code-snippets that will help you to prepare for technical interviews. ✨

Many of these questions a real questions from real interviews. πŸ€™πŸ»


https://t.me/pgimg/183

[ Github ] : kutt.it/faqg

〰️〰️〰️〰️〰️〰️
#Interview #Job
@ProgrammingTip
Domain Driven Design - Clear Your Concepts Before You Start ✨

What we traditionally do when we start a business application❓

We read the spec and find the functionalities. We break down tasks. βœ…

We do the estimation. We distribute the works among team members. We design the database schema - sometimes by the team leader or sometimes by the respective developer. We start coding. πŸ’»

So❓ What’s wrong with this approach❓We have been doing good❗️Don’t we❓

The answer is YES and NO❗️Yes we are doing good in delivering our projects. But NO❗️
We are not doing good in maintaining and extending our projects. πŸ€¦πŸ»β€β™‚οΈ

Think about all of the projects you have worked last few years in the traditional approach. Did you ever face any of the issues below ? πŸ€”

Your project has the same functionality implemented in the same way or different in different places. πŸ‘₯

You have more than one object for the same item. ❌

You have objects that have properties that are not actually attributes of that object. πŸ™…πŸ»β€β™‚οΈ

You have no or very poor relationship among related items. ↔️

Looking at your objects it is not possible to understand what actually the whole application is all about. πŸ€·πŸ»β€β™‚οΈ


https://t.me/pgimg/184

[ Article ] : kutt.it/ddda

〰️〰️〰️〰️〰️〰️
#DDD #Architecture
@ProgrammingTip
Tilt.js ✨

A tiny requestAnimationFrame powered 60+fps lightweight parallax hover tilt effect for jQuery. πŸ’Ž

Alternatives :
β€’ Vanilla JS
β€’ React
β€’ Polymer


https://t.me/pgimg/185

[ Github ] : github.com/gijsroge/tilt.js
[ Demo ] : gijsroge.github.io/tilt.js/

〰️〰️〰️〰️〰️〰️
#JavaScript #jQuery #Parallax #React
@ProgrammingTip
THE JAVASCRIPT EVENT LOOP ⚑️

The Event Loop is one of the most important aspects to understand about JavaScript. ✨

This post explains it in simple terms. πŸ’Ž


https://t.me/pgimg/186

[ Article ] : kutt.it/jel

〰️〰️〰️〰️〰️〰️
#JavaScript #EventLoop
@ProgrammingTip
Auto Rest ✨

OpenAPI
(f.k.a Swagger) Specification code generator. πŸ’Ž

Supports C#, Go, Java, Node.js, TypeScript, Python, Ruby and PHP. πŸ”₯

The AutoRest tool generates client libraries for accessing RESTful web services. ⚑️

Input to AutoRest is a spec that describes the REST API using the OpenAPI Specification format. βœ…


https://t.me/pgimg/187

[ Introduction ] : kutt.it/ares
[ Github ] : github.com/Azure/autorest

〰️〰️〰️〰️〰️〰️
#Rest #API #OpenAPI #Swagger
@ProgrammingTip
Reinforced.Typings ⚑️

Converts C# classes to TypeScript interfaces (and many more) within project build. πŸ’Ž

Examples ✨ :

C#
β™₯️ :

[TsInterface]
public class Order
{
public string ItemName { get; set; }
public int Quantity { get; set; }
public double Subtotal { get; set; }
public bool IsPaid { get; set; }
public string ClientName { get; set; }
public string Address { get; set; }
}

[TsClass]
public class User
{
public string FirstName { get; set; }
public string Email { get; set; }
public UserType Type { get; set; }
}

[TsEnum]
public enum UserType { One, Two }


Result => TypeScript πŸ’™ :

export interface IOrder
{
ItemName: string;
Quantity: number;
Subtotal: number;
IsPaid: boolean;
ClientName: string;
Address: string;
}

export class User
{
public FirstName: string;
public Email: string;
public Type: MyApp.UserType;
}

export enum UserType {
One = 0,
Two = 1,
}


https://t.me/pgimg/188


[ Github ] : kutt.it/csts

〰️〰️〰️〰️〰️〰️
#CSharp #TypeScript
@ProgrammingTip
New horizons in CSS: Houdini and the Paint API 🌈

The way we write CSS is about to change. No, I don’t mean you have to change how you write your styles, but we as developers are about to get a lot more control. πŸ’ͺ🏻

What am I talking about❓That would be the CSS Houdini spec and the new browser APIs that are coming out as a part of it. βœ…


https://t.me/pgimg/189


[ Article ] : kutt.it/papi

〰️〰️〰️〰️〰️〰️
#CSS #PaintAPI
@ProgrammingTip
β€œYou know nothing , Engineers” β€” HTTP [Patch] πŸ€·πŸ»β€β™‚οΈ

I
believe, HTTP Patch is completely misunderstood by us ( At least by some of us ). πŸ€”

A PATCH request is one of the lesser-known HTTP methods, but I'm including it this high in the list since it is similar to POST and PUT. ↔️

The difference with PATCH is that you only apply partial modifications to the resource. ⚑️

The difference between PATCH and PUT, is that a PATCH request is non-idempotent (like a POST request). βœ…


https://t.me/pgimg/190


[ Article ] : kutt.it/ptch

〰️〰️〰️〰️〰️〰️
#HTTP #PATCH
@ProgrammingTip
ddd_first_15_years.pdf
26.6 MB
Domain-Driven Design: The First 15 Years ⚑️

Fifteen years after the publication of "Domain-Driven Design: Tackling Complexity in the Heart of Software" by Eric Evans, DDD is gaining more adoption than ever. πŸ”₯

To celebrate the anniversary, we've asked prominent authors in the software design world to contribute old and new essays. πŸ’Ž

〰️〰️〰️〰️〰️〰️
#DDD #DomainDrivenDesign
@ProgrammingTip
ASP.NET Core Developer RoadMap in 2019 πŸ”₯

Below you can find a chart demonstrating the paths that you can take and the libraries that you would want to learn to become a ASP.NET Core developer. ✨

I made this chart as a tip for everyone who asks me, " What should I learn next as a ASP.NET Core developer❓" βœ…

If you like or are using this project to learn or start your solution, please give it a star. ⭐️ Thanks❗️


https://t.me/pgimg/191

[ Github ] : kutt.it/AspNetCore

〰️〰️〰️〰️〰️〰️
#AspNetCore #Roadmap
@ProgrammingTip
Mapster πŸ”₯

A fast, fun and stimulating object to object .NET Mapper. ⚑️

Don't let other libraries slow you down, raw Mapster performance is at least 2.5 times faster❗️


https://t.me/pgimg/192

[ Github ] : kutt.it/mapster

[ Performance Benchmark ] : kutt.it/mapbnch

〰️〰️〰️〰️〰️〰️
#Mapper #Mapster #CSharp
@ProgrammingTip
Dark GitHub Style πŸŒ™

Your eyes will β™₯️ you.

[ GitHub ] : kutt.it/git-dark

〰️〰️〰️〰️〰️〰️
#GitHub #Theme
@ProgrammingTip
NGXS ✨

NGXS is a state management pattern + library for Angular. πŸ…°οΈ

It acts as a single source of truth for your application's state, providing simple rules for predictable state mutations. ⚑️

NGXS is modeled after the CQRS pattern popularly implemented in libraries like Redux and NgRx but reduces boilerplate by using modern TypeScript features such as classes and decorators. πŸ”₯

NGXS tries to make things as simple and accessible as possible. 🧩

There can be a lot of boilerplate code in state management, thus a main goal of NGXS is to reduce boilerplate allowing you to do more things with less. πŸ’Ž


https://t.me/pgimg/193

[ GitHub ] : github.com/ngxs/store
[ Website ] : ngxs.gitbook.io

〰️〰️〰️〰️〰️〰️
#Angular #StateManagement #FrontEnd
@ProgrammingTip
LowDB is a small local JSON database for Node, Electron and the browser powered by Lodash.⚑️

Sample πŸ’Ž :

const low = require('lowdb')
const FileSync = require('lowdb/adapters/FileSync')

const adapter = new FileSync('db.json')
const db = low(adapter)

// Set some defaults (required if your JSON file is empty)
db.defaults({ posts: [], user: {}, count: 0 })
.write()

// Add a post
db.get('posts')
.push({ id: 1, title: 'lowdb is awesome'})
.write()

// Set a user using Lodash shorthand syntax
db.set('user.name', 'typicode')
.write()

// Increment count
db.update('count', n => n + 1)
.write()

Result πŸ”₯:

{
"posts": [
{ "id": 1, "title": "lowdb is awesome"}
],
"user": {
"name": "typicode"
},
"count": 1
}



https://t.me/pgimg/194

[ GitHub ] : github.com/typicode/lowdb

〰️〰️〰️〰️〰️〰️
#JavaScript #Database
@ProgrammingTip
Code Server πŸ”₯

code-server is VS Code running on a remote server, accessible through the browser.

Easily run it with Docker 🐳 :

docker run -p localhost:8443:8443 -v "${PWD}:/root/project" codercom/code-server code-server --allow-http --no-auth


Features⚑️:

β€’
Code on your Chromebook, tablet, and laptop with a consistent dev environment.

β€’ Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.

β€’ Preserve battery life when you're on the go.


https://t.me/pgimg/195

[ GitHub ] : github.com/codercom/code-server

〰️〰️〰️〰️〰️〰️
#CodeServer #VSCode
@ProgrammingTip