Jump to content

Artigos e notícias interessantes


DanielAmorim
 Share

Recommended Posts

Criei este tópico com o intuito de termos um tópico generalista, onde podemos partilhar e discutir artigos e noticias relacionadas com programação.

                                                                                                                                                                                                                                                                          

Encontrei um artigo que acho que devia ser de leitura obrigatória para todos os que desenvolvem aplicações web.

https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fbb5d4

Cada vez mais a lógica das aplicações está a ser delegada para os browsers, através do javascript, e estamos num ponto que a quantidade data (ficheiros e dados não processados) que é transaccionada entre os servidores e os dispositivos móveis começa a ter implicações na UX nos dispositivos móveis.

Boa leitura :y:

  • Like 1
Link to comment
Share on other sites

Ontem li isto: Dynamic resources using the Network Information API and service workers

Para poupar o download de recursos quando não há "rede" para isso, mais código tem de se colocar para ser processado pelo dispositivo. Pode ficar preocupante, mas também penso que se isto se mantém como default (a sobrecarga dos equipamentos via browser) também o browser e as tecnologias usadas vão melhorar. Sem contar que os smartphones, mesmo os budget, estão cada vez melhores.

Mais logo leio isso a fundo (agora li só a intro :P)

  • Like 1
Link to comment
Share on other sites

Bom artigo @Mini0n 

Esse é um dos grandes desafios dos nossos dias. Como podemos ter aplicações web que tem de servidas em diferentes condições de network. O ajuste dos conteúdos, como o artigo refere, é uma das coisas que pode ser feita. Outra é a persistência dos dados localmente e sincronização dos mesmos quando há ligação. Nós estamos mal habituados em relação às condições de rede, mas como diz no artigo a realidade mundial não é bem assim. Imaginemos uma equipa de enfermagem que aplica um programa de vacinação num país africano, naquelas aldeias perdidas no meio do nada, e querem ter a informação em formato digital. Ou então um exemplo mais cosmopolita que é alguém que quer agendar algo numa app mas está no metro, num parque de estacionamento ou numa casa. As aplicações não podem de todo ser desenhadas tendo em conta óptimas condições de acesso à internet.

Link to comment
Share on other sites

Já que estão a falar desse tipo de coisas (apesar de não ser um artigo), um cliente da empresa onde trabalho quer implementar IPFS (IPFS is the Distributed Web, A peer-to-peer hypermedia protocol to make the web faster, safer, and more open), portanto ando a estudar essa solução: https://github.com/ipfs/ipfs

Link to comment
Share on other sites

2 hours ago, DanielAmorim said:

Bom artigo @Mini0n 

Esse é um dos grandes desafios dos nossos dias. Como podemos ter aplicações web que tem de servidas em diferentes condições de network. O ajuste dos conteúdos, como o artigo refere, é uma das coisas que pode ser feita. Outra é a persistência dos dados localmente e sincronização dos mesmos quando há ligação. Nós estamos mal habituados em relação às condições de rede, mas como diz no artigo a realidade mundial não é bem assim. Imaginemos uma equipa de enfermagem que aplica um programa de vacinação num país africano, naquelas aldeias perdidas no meio do nada, e querem ter a informação em formato digital. Ou então um exemplo mais cosmopolita que é alguém que quer agendar algo numa app mas está no metro, num parque de estacionamento ou numa casa. As aplicações não podem de todo ser desenhadas tendo em conta óptimas condições de acesso à internet.

Sim, sem dúvida. Andei a brincar um bocado com o LocalStorage no outro dia e achei que tem um potencial incrível. Num instante conseguimos ter info do lado do cliente e que depois se der, faz-se o sync. Senão, paciência. É muito interessante, ainda que seja só key/value based. Uma coisa tipo sqlite no browser (que se calhar até há e eu não sei) era muito bom.

Que línguagens vocês usam e o que mais costumam fazer?

Eu estou mais virado para a web, sejam sites simples ou apps mais complexas e uso Laravel. Para o frontend sempre usei jQuery mas ultimamente tenho-me virado para o Vue e estou a gostar bastante.

Tenho lido que o futuro vão ser as pwa (progressive web apps) que vão correr localmente e, quando podem, estão online. Combinam o melhor dos 2 mundos, mas se calhar vamos cair no problema do post inicial desta thread. Fica muito peso do lado do cliente e muito mega a ser passado de um lado para o outro só para que esse peso do lado do cliente possa existir...

Link to comment
Share on other sites

Experiência de apps tenho pouca ou nenhuma. A nivel de sites, o paradigma nos ultimos tempos tem sido de facto esse: tirar "peso" aos servidores, e tentar passar carga para o lado dos clientes.  Nos ultimos tempos dei uns toques (ao de leve) quer em Knockout quer em React e gostei da coisa.

Link to comment
Share on other sites

Ainda há dias estive a falar com o @Revenge duma PWA por exemplo para invision, e os ganhos que ele falou na altura dum gajo que já tinha feito uma para um site pouco estático até, como este, eram grandes

Eu comecei a tentar fazer uma há uns tempos, na altura da extensão, mas não dá tempo, mas quem poder experimentar é porreiro

 

https://codelabs.developers.google.com/codelabs/your-first-pwapp/#0

Também tinha um bookmark dum boilerplate duma, que tinha ficado da altura

https://github.com/YagoLopez/progressive-web-app-boilerplate

Link to comment
Share on other sites

  • 2 months later...

Este gajo é top. Criador do tailwindcss. Breve vou dizer adeus ao Bootstrap e virar-me para o Tailwind.

O ecosistema que o Laravel "criou" é demais. Laravel + Tailwind + Vue... ui ui.
Malta do open source, que partilha imenso, cria conteúdos, ensina, etc.

 

Btw, sigam este gajo, Adam Wathan, e o Steve Schoger. Têm coisas muito boas em termos de design. Tips e afins. ;)

  • Like 1
Link to comment
Share on other sites

  • 2 months later...
  • 2 months later...
  • 1 month later...
short-arrow-functions.png?resize=1400%2C
LARAVEL-NEWS.COM

The PHP team recently approved the Short Arrow Functions RFC proposed by Nikita Popov, Levi Morrison, and Bob Weinand. In the RFC it shows this as an example to give you an idea on how it can be used: $extended = function ($c) use ($callable, $factory) { return $callable($factory($c), $c); };   // with arrow function: $extended = fn($c) => $callable($factory($c …

:)

  • Like 1
Link to comment
Share on other sites

Sim, é isso.

É um bocado complicado perceber aquilo, só com (muita) prática é que se atina.

Quando comecei a trabalhar com EF, usamos muito lambda expressions em vez de usarmos "expressões em sql" (usando uma sintática muito parecida). Nesse caso, só atinava se dissesse para mim "tal que", ou seja, por exemplo:

public List<Contract> GetContracts(int personUserID)
        {
            return this.Where(c => c.PersonUserID == personUserID)
				.OrderByDescending(c => c.Order)
				.ThenByDescending(c => c.StartDate).ToList();
        }

Isto lia-se, "quero contratos, tal que o PersonUserID do contrato c seja igual ao parâmetro personUserID que recebemos.

Daí o "tal que". Só assim é que lá atinei.

Mas, por exemplo, em typescript o arrow já é algo completamente diferente porque é JS assíncrono...

Link to comment
Share on other sites

Ah o que falei são lambda functions e não expressions.

Eu no Laravel posso fazer algo assim para filtrar, que é usar uma função anónima.

$collection->filter(function ($item) use ($name) {
	return $item->name == $name;
});

 

Posso é fazer, usando o Eloquent:

User::where('name', 'like', '%camurso%');

Isto é basicamente:

select * from users where name like '%camurso%';

Mas penso que isso como tens (não é isso que é o LINQ?) não existe tal e qual no PHP. Mas sinceramente, prefiro tudo o que o Eloquent tem a tudo o que vi no C#...

Link to comment
Share on other sites

Sim, é no LinqToObject e LinqToSQL.

Confesso aque também nunca percebi muito bem a diferença entre lambda expressions e functions.

Até com funções anónimas me passo dos carretos, sou muito old school. Objectos anónimos ainda consigo papar... Agora, há muita coisa imlícita nestas "novas sintaxes" que me comem o caco e, por vezes, quero fazer algo que é tão fácil e não consigo porque as não domino...

Link to comment
Share on other sites

  • 10 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.