一英文翻译成中文
Drupal 8: Happy, but not satisfied
I'm happy that Drupal has finally shifted to modern, less-proprietary development styles, such as OOP, dependency injection, real solitary unit testing, interfaces, and so on. When we started WSCCI, I insisted that we build at least our new stuff in a clean, OOP fashion. I figured that, like the Drupal 7 database layer before it, it would be another beach head to showing how much better modern dev practices are than what we'd been doing for years and, over the next 2 major releases or so, we'd finally start to embrace OOP. I never dreamed that would happen in "only" one major release, but once the dam broke there was no holding it back. The community wanted, needed that shift and was waiting only for an excuse to do so. We gave it to them. And I've learned a ton about good OOP myself in the process, including how much good OOP seems to mimic good functional code. Even Dependency Injection is something I didn't properly grok until more than a year into the Drupal 8 cycle! (I blame one of Fabien Potencier's presentations for finally helping me over that hump.)
I'm not satisfied with our OOP. Certainly it's leaps and bounds better than it was in the past. Yet we still rely too heavily on "procedural code wrapped in class keywords". We still rely too heavily on Arrays of Doom in many places.
I am not satisfied with our use of inheritance. Too many parts of the system, especially around Plugins, only pay lip services to interfaces and in practice mandate extending base classes. These limitations will bite us in the future, and also undermine the self-documentation benefits of interface-driven design. (The Views and Blocks systems are worst here.) In most cases that was done in the name of making systems easier. As is so often the case, that means we've sacrificed simple in the name of easy. We likely won't be able to fix that for real until Drupal 9, although some workarounds may be possible in the interim.
I am not satisfied with how far we pushed proper dependency injection. A statement I repeated at length throughout the Drupal 8 development process was that if you're accessing the container through the global static \Drupal class from a method,you're doing it wrong. I still firmly hold to that position. Sadly, there are some parts of the system where that is the only possible way to implement an API. That means in those areas, we did it wrong. Entity API and Typed Data are far and away the worst offenders here, and I fear that is going to be a problem hanging around our necks for the entire Drupal 8 cycle.
here's always Drupal 9 Drupal 8.1
In the end, Drupal 8 is an amazing piece of work by an amazing group of people, and I am proud for the role I was able to play in this transformative, ground-breaking process. Hopefully it continues to serve as an example to other projects of just what a healthy community can do if it puts its mind to it.
That said, make no mistake. We're not done. Not even close. There is plenty of work still to do to make Drupal the system it has the potential to become, and to help ensure that we never fall behind again the way we had before Drupal 8. Some of that work will need to wait for Drupal 9, but much of it can be done today. It just takes the commitment to keep improving, the refusal to settle for "good enough", and the willingness to challenge yourself and others to make tomorrow's work ever better than today's, even if it's uncomfortable to admit how far there is left to go.
That's how we got this far, and that's what will take us the rest of the way and beyond.
We should all be happy of our accomplishments. But never, ever be satisfied.
二中文翻译成英文
三下面反映Drupal开发者的心声曾以迪斯尼某首歌曲的旋律演唱过,请问是哪首
(本题目主要考察对Drupal大会技术视频的熟悉程度)
Colors of the wind
A Whole New World
Mulan - Reflection
FROZEN - Let It Go
四物联网时代Drupal的优势是什么








