Skip to content

convert all formal to named parameters produde bad code #62284

@stephane-archer

Description

@stephane-archer
class ButtonsSection extends StatelessWidget {
  final FCPLibrary _finalCutLibrary;
  final Future<int> _renderFilesSize;
  final Future<int> _proxyMediaSize;
  final Future<int> _optimizedMediaSize;
  final Future<int> _opticalFLowFilesSize;
  final Future<bool> _hasExternalSymlinks;

  const ButtonsSection(
      this._finalCutLibrary,
      this._renderFilesSize,
      this._proxyMediaSize,
      this._optimizedMediaSize,
      this._opticalFLowFilesSize,
      this._hasExternalSymlinks,
      {super.key});

  @override
  Widget build(BuildContext context) {
    ...
  }
}

convert all formal to named parameters produde bad code

class ButtonsSection extends StatelessWidget {
  final FCPLibrary _finalCutLibrary;
  final Future<int> _renderFilesSize;
  final Future<int> _proxyMediaSize;
  final Future<int> _optimizedMediaSize;
  final Future<int> _opticalFLowFilesSize;
  final Future<bool> _hasExternalSymlinks;

  const ButtonsSection(
      {required this._finalCutLibrary,
      required this._renderFilesSize,
      required this._proxyMediaSize,
      required this._optimizedMediaSize,
      required this._opticalFLowFilesSize,
      required this._hasExternalSymlinks,
      super.key});

  @override
  Widget build(BuildContext context) {
...
  }
}

expected code:

class ButtonsSection extends StatelessWidget {
  final FCPLibrary _finalCutLibrary;
  final Future<int> _renderFilesSize;
  final Future<int> _proxyMediaSize;
  final Future<int> _optimizedMediaSize;
  final Future<int> _opticalFLowFilesSize;
  final Future<bool> _hasExternalSymlinks;

  const ButtonsSection(
      {required FCPLibrary finalCutLibrary,
      required Future<int> renderFilesSize,
      required Future<int> proxyMediaSize,
      required Future<int> optimizedMediaSize,
      required Future<int> opticalFLowFilesSize,
      required Future<bool> hasExternalSymlinks,
      super.key})
      : _hasExternalSymlinks = hasExternalSymlinks,
        _opticalFLowFilesSize = opticalFLowFilesSize,
        _optimizedMediaSize = optimizedMediaSize,
        _proxyMediaSize = proxyMediaSize,
        _renderFilesSize = renderFilesSize,
        _finalCutLibrary = finalCutLibrary;

  @override
  Widget build(BuildContext context) {
    ...
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2A bug or feature request we're likely to work onarea-devexpFor issues related to the analysis server, IDE support, linter, `dart fix`, and diagnostic messages.devexp-refactoringIssues with analysis server refactoringstype-bugIncorrect behavior (everything from a crash to more subtle misbehavior)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions