10 ms·
Angular: Learn about property binding, event binding, pipes, templates, views, metadata, attribute directives, structural directives, services, modules, compone
by pacala 7y ago
Angular: Learn about property binding, event binding, pipes, templates, views, metadata, attribute directives, structural directives, services, modules, components, injectors.
React: Write a function that generates a piece of HTML. Use standard event handlers to manage user interactions. Update state via setState methods. Ship it.
- hokumguru 7y agoAnd honestly, if misused you can really tank performance quite easily. The learning curve can make it incredibly difficult to introduce to a team of developers with variable skillsets.
- fmakunbound 7y agoHaving suffered on a large Angular code based on Angular 7 and then Angular 8 for a couple of years, I just wish Angular would fucking die. Every small thing is a giant shit-pile of services, components and HTML templates that are all accidental complexity.
- deleted 7y ago[deleted]
- ng12 7y agoThe first time I saw this in Angular's material implementation I was completely floored: https://material.angular.io/components/dialog/overview#sharing-data-with-the-dialog-component- https://material.angular.io/components/dialog/overview#shari... The method for passing data to a dialog component is to import a magic constant and inject a data field into it's constructor? It's a completely over-engineered, nonsensical solution for a problem that doesn't even exist in React. There's so much stuff you have to be familiar with in Angular just to build the simplest features.
- EugeneOZ 7y agoDon't use this library as an example of Angular code. I've written dozens of Angular apps and none of them were so over-engineered. AngularMaterial is a good example how to not design API. I'm sorry if it insults some people - we all make mistakes, it's ok, I'm sure you'll next library will be better and I understand it's too late to change API in a project, when some huge Google apps are using it.
- ng12 7y agoNot only is @angular/material the most popular component library by a huge margin but it's maintained by the Angular team itself. If it's as bad as you say it is that really doesn't inspire confidence.
- chvid 7y agoYes. Take a look at what you have to go through if you want to create a custom component in angular material (that can sit inside a form): https://material.angular.io/guide/creating-a-custom-form-field-control https://material.angular.io/guide/creating-a-custom-form-fie... Something has gone completely wrong here.
- squeaky-clean 7y agoAgreed, I've had to use angular material in the past and never would again. I generally enjoy Angular though.
- IggleSniggle 7y agoThe last time I looked at Angular Material was quite some time ago, but at the time I was really surprised because it didn't follow the conventions established in the docs, and the conventions it did use seemed nonsensical given the design of the Angular framework. I can only guess that "same team" was a design-centric subteam for Angular while the engineering-centric team worked on the framework/documentation itself, or that Angular Material was under pressure to get implemented before all the best practices were established and by then they were stuck with the API.
- ENGNR 7y agoIt reminds me of the whole .NET ecosystem. All of these custom magical special ways to do everything, compared to ‘dumb’ setups like node/ruby/go where the actual logic is just right there in front of you And every release .NET just keeps moving closer to the dumb systems. Simple and raw is good, keep the magic away
- kumarvvr 7y agoI am really glad there are other people who think this way. I am experienced with Python/JS/Ruby web app development models and recently had a look at ASP.NET Core web api projects. The amount of complexity is mind boggling. I mean, look at Flask in Python. Or even Expressjs in Node, why can't Microsoft come up with a simple framework that can run well on the .NET runtime? I am a huge fan of C#, having used it for Desktop app development. I would love to have a framework like flask in the .NET ecosystem.
- UglyToad 7y agoIs something like Nancy [0] close to what you're after? I've not used it myself because I prefer the structure of the full approach but from my extremely brief interaction with Express in Node it seems similar? [0]: https://github.com/NancyFx/Nancy https://github.com/NancyFx/Nancy
- deleted 7y ago[deleted]
- nchie 7y agoWhat's so complex about ASP.NET Core web api, other than having to learn to use a DI framework? I found it very simple and minimal (again, other than the DI) when learning it.
- taway123411 7y agoCan you elaborate on the "mind boggling" complexity? Flask is self-described as a "micro framework", which makes it simple to start with, but IMHO difficult to grow into something bigger. I like the balance the ASP.NET Core 3.0 strikes. dotnet new webapp -o HelloWorld Yields a fully functional site with * HTTPS * Logging * HTML templating * CSS/JS bundling & minification And all of this is easy to customize and change. "Web API" projects are even simpler-- it's just a small handful of files.
- rawoke083600 7y agoBut then all your colleagues also have to learn(read do it that way) versus each coming up with their own nonsense...
- _the_inflator 7y agoAngular really shines in Enterprise context. 13+ teams and all use the same stack. Enter React and you are in maintenance hell, is my experience.
- vvpan 7y agoI haven't used the more recent version of Angular so not sure what their "stack" is, but doesn't `create-react-app` take care of much of that?
- dragonwriter 7y agoIf you have enough governance in an enterprise org to standardize on Angular, you should also have enough to standardize on a particular React stack, and not just "React".
- _the_inflator 7y agoYes, same goes for Vue etc. You can hardly govern the freedom React provides. If you do, you can use Angular in the first place, because it has solutions out of the box. This is not to discredit React or Vue. I am judging from my experience developing applications with 200+ developers across continents. You can write crappy code in Angular as well, but it helps you govern your architecture and your app. If you want modular components that can be reused, go for Angular. For smaller things or landing pages use Vue, React. My experience.
- tvphan 7y agoMost popular re-usable component libraries and websites are written in React.
- pjmlp 7y agoReact: discover that function alone doesn't do all that is expected from an UI Framework, go hunting for a myriad of libraries to handle state, communications across components, tune performance 'cause FP approach makes GC do overtime, endless hours explaining to fellow devs what is this FP stuff all about,....
- Keverw 7y agoYep, when I was studying Angular I kinda felt it was trying to reinvent everything, so personally I can wrap my head around React a little bit more. However I know people consider React more of a library, maybe Angular is more of a full on framework?
- aabbcc1241 7y agoStencil provides similar experience to React, plus Stencil compiles every component into typed web component, so it works with other frameworks as well.